함수 DownloadData [SWS_DM_00790] Upstream: RS_AP_00119, RS_AP_00138, RS_Diag_04033, RS_Diag_04170
virtual ara::core::Future< OperationOutput > DownloadData (ara::core::Span< const std::uint8_t > transferRequestParameterRecord, const MetaInfo &metaInfo, CancellationHandler cancellationHandler) noexcept=0;
Called for TransferData following a previous RequestDownload.
사용
메소드 [SWS_DM_00790]은(는) 이전에 시작된 다운로드 요청 후 UDS 서비스 TransferData (0x36)에 대한 데이터를 처리하기 위해 호출됩니다(AUTOSAR_AP_SWS_Diagnostics §8.14.1.1.3.1 “DownloadData”). 실행은 ara::core::Future<OperationOutput>을(를) 통해 비동기식으로 수행됩니다.
입력으로 전송할 데이터가 포함된 ara::core::Span<const std::uint8_t>(transferRequestParameterRecord), MetaInfo을(를) 통한 컨텍스트 데이터 및 CancellationHandler이(가) 전달됩니다. 페이로드는 Promise가 충족되거나 작업이 취소될 때까지 유효하게 유지됩니다. 성공적으로 완료되면 응답 데이터는 OperationOutput.responseData에 저장되고 긍정 응답 메시지의 블록 시퀀스 카운터 뒤에 배치됩니다[SWS_DM_00786].
오류 처리
처리 중 오류가 발생하면 Promise는 부정 UDS 응답으로서 DiagUdsNrcErrc의 적절한 ErrorCode(ISO 14229-1에 따른 NRC)(으)로 완료됩니다[SWS_DM_00790].
동시성 및 제약사항
이 함수는 noexcept(으)로 선언되어 있습니다. 구현이 스레드 안전하게 실행되어야 하는지 여부는 생성자에 전달된 ConcurrencyType에 의해 조건부로 결정됩니다 [SWS_DM_00790]. CancellationHandler을(를) 통해 취소 상태를 쿼리하거나(IsCanceled) SetNotifier을(를) 통해 알림 콜백을 등록할 수 있습니다.
상호 작용
이 동작은 이전에 RequestDownload (0x34)를 통해 다운로드 세션이 시작된 후 TransferData [SWS_DM_00137]의 처리를 구현합니다 [SWS_DM_00869]. 데이터 블록의 전달은 UDS 세션 순서에 따라 순차적으로 수행되는 것으로 추정됩니다. 질문 Q-fe18230bf7fcdf47 (열림)
이 사용 지침은 AUTOSAR 사양을 바탕으로 자동 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
| Header-Datei | #include "ara/diag/download.h" |
|---|---|
| Scope | class ara::diag::DownloadService |
| Exception-Sicherheit | exception safe |
| Thread-Sicherheit | conditional whether the function has to be implemented thread safe or non-thread safe is determined by the ConcurrencyType given in the constructor |
Parameter (in)
| Parameter | Beschreibung |
|---|---|
| transferRequestParameterRecord | data to be transferred (copied/downloaded to the ECU/server) Lifetime: Valid until Promise is fulfilled or the processing is cancelled by the cancellationHandler. |
| metaInfo | MetaInfo of the request. |
| cancellationHandler | This parameter is used to • Query the current cancellation status by calling cancellationHandler.IsCanceled. Returns TRUE in case, the current conversation has been cancelled and FALSE otherwise. • Register a notifier function by calling cancellationHandler.SetNotifier. The registered notifier is called if the current conversation is cancelled. |
Rückgabewert
| Typ | Beschreibung |
|---|---|
| ara::core::Future<OperationOutput > | A Future, which either gets readied to OperationOutput (transfer ResponseParameterRecord for a positive response message) or readied with ErrorCode from DiagUdsNrcErrc (for an negative response message). Data in OperationOutput.responseData will be placed after the blockSequenceCounter as transferResponseParameterRecord in the positive response. |
Fehler
| Fehlercode | Beschreibung |
|---|---|
| Please use an applicable NRC, as defined in ISO 14229-1, using DiagUdsNrcErrc. | |
Request a governed re-review of this record. The record is not changed immediately.
- Record
AUTOSAR/AP/record/SWS_DM_00790- Status
- valid/unmigrated
- Version
AUTOSAR/AP/record/SWS_DM_00790@rel:R25-11#04cfb8bc- Content hash
04cfb8bc- Source
- https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00790
Status: valid/unmigrated
Version: rel:R25-11#a7575344
Versionshistorie & Revisions (1 transition, 8 revision)
- Current State
valid/unmigrated- Reason
- mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
- Campaign
2026-08-13-status-backfill- Active Version
AUTOSAR/AP/record/SWS_DM_00790@rel:R25-11#a7575344
Recorded Revisions (8):
- R25-11
rel:R25-11#805cae222026-09-30 - R19-11
rel:R19-11#266301b32026-10-14 - R20-11
rel:R20-11#0ebd14d12026-10-14 - R21-11
rel:R21-11#3484339d2026-10-14 - R22-11
rel:R22-11#f928e1d22026-10-14 - R23-11
rel:R23-11#83a2741f2026-10-14 - R24-11
rel:R24-11#0b81b5b92026-10-14 - R25-11
rel:R25-11#a75753442026-10-14 active
Requirement Text as-of this release:
Curation Decisions:
Reachable Artifacts & Dependents:
| Date | Actor | Transition | Reason / Rationale | Campaign |
|---|---|---|---|---|
| 2026-08-13 | tool | none → valid/unmigrated | mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record | 2026-08-13-status-backfill |
gemini-3.8-flash-low· 2026-10-13 · 독일어 원문