फ़ंक्शन 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.
उपयोग
पहले से शुरू किए गए डाउनलोड अनुरोध (AUTOSAR_AP_SWS_Diagnostics §8.14.1.1.3.1 “DownloadData”) के बाद UDS सेवा TransferData (0x36) के लिए डेटा को प्रोसेस करने हेतु मेथड [SWS_DM_00790] को कॉल किया जाता है। निष्पादन ara::core::Future<OperationOutput> के माध्यम से एसिंक्रोनस रूप से होता है।
इनपुट के रूप में ट्रांसफर किए जाने वाले डेटा के साथ एक ara::core::Span<const std::uint8_t> (transferRequestParameterRecord), MetaInfo के माध्यम से संदर्भ डेटा और एक CancellationHandler पास किया जाता है। पेलोड तब तक मान्य रहता है जब तक Promise पूरा नहीं हो जाता या ऑपरेशन रद्द नहीं हो जाता। सफल समापन पर, प्रतिक्रिया डेटा OperationOutput.responseData में संग्रहीत किया जाता है और सकारात्मक प्रतिक्रिया संदेश में ब्लॉक सीक्वेंस काउंटर के पीछे रखा जाता है [SWS_DM_00786]।
त्रुटि प्रबंधन
यदि प्रोसेसिंग के दौरान कोई त्रुटि होती है, तो Promise को नकारात्मक UDS प्रतिक्रिया के रूप में DiagUdsNrcErrc (ISO 14229-1 के अनुसार NRC) से उपयुक्त ErrorCode के साथ पूरा किया जाता है [SWS_DM_00790]।
समवर्तीता और प्रतिबंध
फ़ंक्शन को noexcept के रूप में घोषित किया गया है। क्या कार्यान्वयन को थ्रेड-सुरक्षित रूप से निष्पादित किया जाना चाहिए, यह कंस्ट्रक्टर में पास किए गए ConcurrencyType द्वारा सशर्त रूप से निर्धारित किया जाता है [SWS_DM_00790]। CancellationHandler के माध्यम से रद्दीकरण स्थिति की जांच की जा सकती है (IsCanceled) या SetNotifier के माध्यम से एक अधिसूचना कॉलबैक पंजीकृत किया जा सकता है।
इंटरैक्शन
ऑपरेशन TransferData [SWS_DM_00137] के प्रसंस्करण को कार्यान्वित करता है, जिसके पहले RequestDownload (0x34) के माध्यम से डाउनलोड सत्र शुरू किया गया था [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#30151c3f- Content hash
30151c3f- 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 · जर्मन मूल