functie 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.
Gebruik
De methode [SWS_DM_00790] wordt aangeroepen om gegevens voor de UDS-dienst TransferData (0x36) te verwerken na een vooraf geïnitieerd downloadverzoek (AUTOSAR_AP_SWS_Diagnostics §8.14.1.1.3.1 “DownloadData”). De uitvoering vindt asynchroon plaats via ara::core::Future<OperationOutput>.
Als invoer worden een ara::core::Span<const std::uint8_t> met de over te dragen gegevens (transferRequestParameterRecord), contextgegevens via MetaInfo en een CancellationHandler overgedragen. De nuttige gegevens blijven geldig totdat de promise is vervuld of de operatie wordt geannuleerd. Bij een succesvolle afronding worden antwoordgegevens in OperationOutput.responseData opgeslagen en achter de blokvolgorde-teller in het positieve antwoordbericht geplaatst [SWS_DM_00786].
Foutafhandeling
Treedt er tijdens de verwerking een fout op, dan wordt de promise voltooid met een passende ErrorCode uit DiagUdsNrcErrc (NRC conform ISO 14229-1) als negatief UDS-antwoord [SWS_DM_00790].
Gelijktijdigheid en beperkingen
De functie is gedeclareerd als noexcept. Of de implementatie thread-safe moet worden uitgevoerd, wordt voorwaardelijk bepaald door de in de constructor meegegeven ConcurrencyType [SWS_DM_00790]. Via de CancellationHandler kan de annuleringsstatus worden opgevraagd (IsCanceled) of kan een notificatie-callback via SetNotifier worden geregistreerd.
Samenspel
De operatie implementeert de verwerking van TransferData [SWS_DM_00137], nadat vooraf de downloadsessie via RequestDownload (0x34) is gestart [SWS_DM_00869]. Vermoedelijk vindt de overdracht van de datablokken sequentieel plaats overeenkomstig de UDS-sessievolgorde. Vraag Q-fe18230bf7fcdf47 (open)
Deze gebruiksinstructie is automatisch gegenereerd op basis van de AUTOSAR-specificatie.
Implementer's Guide volgt (complexiteit 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#12f0c8e0- Content hash
12f0c8e0- 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 · Duits origineel