DEENESPTFRRUARHIKOZHNL

क्लास ara::diag::DataTransferReadByPushHandler

[SWS_DM_01515] Upstream: RS_Diag_04135

class DataTransferReadByPushHandler {...};

Handles data transfers initiated by RequestReadFile/-Directory with data pushed by the implementation.

Header-Datei#include "ara/diag/data_transfer.h"
Forwarding-Header#include "ara/diag/diag_fwd.h"
Scopenamespace ara::diag

उपयोगकर्ता गाइडएआई जनित

UDS रीड अनुरोधों पर ऐप्लिकेशन्स को फ़ाइल और डायरेक्टरी सामग्री को सक्रिय रूप से प्रदान करने में सक्षम बनाता है।
एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 1ed24b3e3197 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

UDS रीड अनुरोधों पर ऐप्लिकेशन्स को फ़ाइल और डायरेक्टरी सामग्री को सक्रिय रूप से प्रदान करने में सक्षम बनाता है।

क्लास ara::diag::DataTransferReadByPushHandler UDS रीड ट्रांसफ़र के लिए बेस इंटरफ़ेस के रूप में कार्य करती है, जिसमें ऐप्लिकेशन फ़ाइल सामग्री को सक्रिय रूप से पैकेटबद्ध करता है और प्रदान करता है [SWS_DM_01515]। डेटा ब्लॉक्स क्रमिक रूप से Read() के माध्यम से पास किए जाते हैं और ट्रांसफ़र सत्र को बाद में ExitRead() के माध्यम से व्यवस्थित रूप से समाप्त किया जाता है [SWS_DM_01523]। प्रत्येक हैंडलर सख्ती से ठीक एक ट्रांसफ़र सत्र से बंधा होता है, जिसके कारण कॉपी ऑपरेशन्स निषिद्ध हैं। एक अनिवार्य लाइफ़साइकिल शर्त के रूप में, इंस्टेंस को किसी भी स्थिति में ExitRead() के कॉल से पहले नष्ट नहीं किया जाना चाहिए [SWS_DM_01519]।

संदर्भ

क्लास ara::diag::DataTransferReadByPushHandler डायग्नोस्टिक डेटा ट्रांसफ़र के लिए बेस और इंटरफ़ेस क्लास के रूप में कार्य करती है, जो RequestReadFile या RequestReadDirectory जैसे अनुरोधों द्वारा शुरू किए जाते हैं [SWS_DM_01515]। अंतर्निहित ट्रांसफ़र पैटर्न पुश-सिद्धांत पर आधारित है: फ़ाइल या डायरेक्टरी डेटा को विशिष्ट ऐप्लिकेशन कार्यान्वयन द्वारा सक्रिय रूप से पैकेटबद्ध किया जाता है और डायग्नोस्टिक प्रबंधन (Diagnostic Management, DM) को सौंपा जाता है AUTOSAR_AP_SWS_Diagnostics §8.10.3 “Class: DataTransferReadByPushHandler”। यह परस्पर क्रिया बाहरी UDS क्लाइंट, प्लेटफ़ॉर्म घटक ara::diag और ऐप्लिकेशन के ठोस हैंडलर कार्यान्वयन के बीच होती है।

client UDS-Client dm ara::diag (DM) client->dm UDS RequestReadFile / TransferData dm->client UDS Response handler DataTransferReadByPushHandler dm->handler Read() / ExitRead() handler->dm Future<Vector<Byte>>

संदर्भ आरेख: बाहरी UDS क्लाइंट और Diagnostic Management के बीच पुश हैंडलर का वर्गीकरण। स्रोत: [SWS_DM_01515], AUTOSAR_AP_SWS_Diagnostics §8.10.3 “Class: DataTransferReadByPushHandler”

जीवनचक्र

चूंकि DataTransferReadByPushHandler को एक अमूर्त बेस क्लास के रूप में डिज़ाइन किया गया है, पैरामीटर रहित कंस्ट्रक्टर संरक्षित दृश्यता (protected) के अंतर्गत उपलब्ध है [SWS_DM_01516]। इंस्टैंसिएशन ऐप्लिकेशन के भीतर एक व्युत्पन्न क्लास के संदर्भ में होता है। इंस्टेंस सख्ती से केवल एक फ़ाइल ट्रांसफ़र सत्र (“one way usage”) से बंधे होते हैं; परिणामस्वरूप, कॉपी कंस्ट्रक्टर [SWS_DM_01518] और साथ ही कॉपी असाइनमेंट ऑपरेटर [SWS_DM_01521] स्पष्ट रूप से हटा दिए गए हैं (=delete)। स्वामित्व का स्थानांतरण मूव ऑपरेशन्स के माध्यम से संभव है, क्योंकि मूव कंस्ट्रक्टर [SWS_DM_01517] और मूव असाइनमेंट [SWS_DM_01520] डिफ़ॉल्ट कार्यान्वयन के रूप में मौजूद हैं और अपवाद-सुरक्षित (noexcept) घोषित हैं।

हैंडलर को नष्ट करने के लिए विनिर्देश एक सख्त पूर्व-शर्त परिभाषित करता है: किसी इंस्टेंस को किसी भी स्थिति में तब तक नष्ट नहीं किया जाना चाहिए जब तक कि ExitRead() के कॉल के माध्यम से सत्र समाप्त न हो जाए [SWS_DM_01519], AUTOSAR_AP_SWS_Diagnostics §8.10.3.1.1.2 “Destructor”। कॉनकरेंसी के संबंध में, क्लास के वर्चुअल मेथड्स को नॉन-थ्रेड-सेफ़ (“not thread-safe”) निर्दिष्ट किया गया है [SWS_DM_01522], [SWS_DM_01523], इसलिए प्लेटफ़ॉर्म द्वारा समवर्ती एक्सेस को सिंक्रनाइज़ या क्रमिक रूप से निष्पादित किया जाना चाहिए।

उपयोग पथ

परिचालन प्रवाह डेटा फ़्रैग्मेंट्स के दोहराव वाले प्रावधान और व्यवस्थित सत्र समाप्ति में विभाजित है। रीड प्रक्रिया शुरू होने के बाद, ara::diag बार-बार मेथड Read() को कॉल करता है [SWS_DM_01522], AUTOSAR_AP_SWS_Diagnostics §8.10.3.1.3.2 “Read”। ऐसा करते समय, फ़्रेमवर्क इष्टतम थ्रूपुट प्राप्त करने के लिए बाइट्स में अनुशंसित रिटर्न आकार (recommended_number_bytes_to_return) के लिए एक दिशानिर्देश मान के साथ-साथ अनुरोध संदर्भ (MetaInfo) और एक CancellationHandler पास करता है। ऐप्लिकेशन डेटा पैकेट बनाता है और ara::core::Future<ara::core::Vector<ara::core::Byte>> के माध्यम से इसका स्वामित्व Diagnostic Management को सौंपता है, जो पेलोड डेटा को ब्लॉक अनुक्रम काउंटर के बाद UDS प्रतिक्रिया संदेश में सम्मिलित करता है [SWS_DM_01522]।

जैसे ही सभी डेटा ब्लॉक्स ट्रांसफ़र हो जाते हैं या सत्र समाप्त किया जाना होता है, ara::diag मेथड ExitRead() को कॉल करता है [SWS_DM_01523], AUTOSAR_AP_SWS_Diagnostics §8.10.3.1.3.1 “ExitRead”। समाप्ति कारण (DataTransferExitType exit_type) के अतिरिक्त, निर्माता-विशिष्ट अनुरोध पैरामीटर्स transfer_request_parameter_record के माध्यम से पास किए जाते हैं। इस पैरामीटर स्पैन का लाइफ़टाइम बाध्यकारी रूप से इससे जुड़ा होता है जब तक कि संबंधित प्रॉमिस पूरा न हो जाए या प्रोसेसिंग रद्द न हो जाए [SWS_DM_01523]। Future के माध्यम से अंतिम प्रतिक्रिया पैरामीटर सेट वापस किए जाने के बाद, ट्रांसफ़र को पूर्ण माना जाता है, जिससे हैंडलर ऑब्जेक्ट के सुरक्षित विनाश की शर्त पूरी हो जाती है [SWS_DM_01519]।

पुश-आधारित रीड ट्रांसफ़र का अनुक्रमara::diag (DM)DataTransferReadByPushHandlerUse Case: डेटा ट्रांसमिशन (रीड लूप)Read(recommended_bytes, meta_info, cancel_handler)Datenchunk erzeugenFuture<Vector<Byte>> bereitstellenUse Case: SitzungsabschlussExitRead(exit_type, param_record, meta_info, cancel_handler)Sitzungsressourcen freigebenFuture<Vector<Byte>> bereitstellen

अनुक्रम आरेख: रीड ट्रांसफ़र और ट्रांसफ़र समाप्ति पर Diagnostic Management और हैंडलर के बीच विशिष्ट इंटरैक्शन क्रम। स्रोत: [SWS_DM_01522], [SWS_DM_01523], [SWS_DM_01519]

त्रुटि परिदृश्य

यदि डेटा ब्लॉक्स के संकलन के दौरान या सत्र समाप्ति पर कोई त्रुटि होती है, तो इसे संबंधित ara::core::Future के माध्यम से एसिंक्रोनस रूप से रिपोर्ट किया जाता है। सकारात्मक प्रतिक्रिया संरचना के स्थान पर, फ़्यूचर को DiagUdsNrcErrc श्रेणी से एक त्रुटि कोड (ara::core::ErrorCode) के साथ प्रदान किया जाता है, जो ISO 14229-1 के अनुसार उपयुक्त नकारात्मक प्रतिक्रिया पहचानकर्ता (Negative Response Code, NRC) से मेल खाता है [SWS_DM_01522], [SWS_DM_01523]।

यदि डायग्नोस्टिक संवाद टूट जाता है या क्लाइंट निरस्तीकरण अनुरोध भेजता है, तो पास किया गया CancellationHandler प्रभावी होता है। कार्यान्वयन cancellation_handler.IsCanceled() के माध्यम से वर्तमान निरस्तीकरण स्थिति को क्वेरी कर सकता है या cancellation_handler.SetNotifier() के माध्यम से एक कॉलबैक फ़ंक्शन पंजीकृत कर सकता है, जो वार्तालाप रद्द होने पर ट्रिगर होता है [SWS_DM_01522], [SWS_DM_01523]। प्रॉमिस की पूर्ति या निरस्तीकरण साथ ही ExitRead() में पैरामीटर सेट की वैधता की समाप्ति को भी चिह्नित करता है [SWS_DM_01523]।

यह मार्गदर्शिका AUTOSAR Adaptive Platform रिलीज़ R25-11 के विनिर्देश पर आधारित है।

सदस्य मानचित्र

कंस्ट्रक्टर और डिस्ट्रक्टर

2

मेथड

2

ऑपरेटर

1

क्लास आरेख

Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.

G nara__diag__DataTransferReadByPushHandler95 DataTransferReadByPushHandler + DataTransferReadByPushHandler() + ~DataTransferReadByPushHandler() + ExitRead() + Read() + operator=()

विवरण दृश्य

रूपरेखा में कोई प्रविष्टि चुनें।

कंस्ट्रक्टर और डिस्ट्रक्टर

DataTransferReadByPushHandler फ़ंक्शन 3

Constructs an instance of this class.

ओवरलोड DataTransferReadByPushHandler 3
DataTransferReadByPushHandler () noexcept=default; SWS_DM_01516
DataTransferReadByPushHandler (DataTransferReadByPushHandler &&other) noexcept=default; SWS_DM_01517
DataTransferReadByPushHandler (DataTransferReadByPushHandler const &)=delete; SWS_DM_01518
~DataTransferReadByPushHandler फ़ंक्शन

Destructs an instance of this class. An instance of this class must not be destroyed before ExitRead() is called

virtual ~DataTransferReadByPushHandler () noexcept=default;

मेथड

ExitRead फ़ंक्शन

Exits an ongoing data transfer session.

virtual auto ExitRead (DataTransferExitType exit_type, ara::core::Span< const ara::core::Byte > transfer_request_parameter_ record, MetaInfo const &meta_info, CancellationHandler cancellation_ handler) noexcept -> ara::core::Future< ara::core::Vector< ara::core::Byte > >=0;
Read फ़ंक्शन

Reads data chunk from the application. The first or subsequent file/directory info content chunk to be sent back to the UDS client will be composed by the application and its ownership is passed as a result to ara::diag.

virtual auto Read (std::size_t recommended_number_bytes_to_return, MetaInfo const &meta_info, CancellationHandler cancellation_handler) noexcept -> ara::core::Future< ara::core::Vector< ara::core::Byte > >=0;

ऑपरेटर

operator= फ़ंक्शन 2

Move assigns an instance of this class.

ओवरलोड = 2
auto operator= (DataTransferReadByPushHandler &&other) & noexcept -> DataTransferReadByPushHandler & =default; SWS_DM_01520
auto operator= (DataTransferReadByPushHandler const &) -> DataTransfer ReadByPushHandler &=delete; SWS_DM_01521

मेथड का प्रलेखन

फ़ंक्शन DataTransferReadByPushHandler [SWS_DM_01516] Upstream: RS_Diag_04135

DataTransferReadByPushHandler () noexcept=default;

Constructs an instance of this class.

Header-Datei#include "ara/diag/data_transfer.h"
Scopeclass ara::diag::DataTransferReadByPushHandler
Exception-Sicherheitexception safe
Sichtbarkeitprotected

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01516
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01516@rel:R25-11#b465cc97
Content hash
b465cc97
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01516
Status: valid/unmigrated Version: rel:R25-11#49a6743f Versionshistorie & Revisions (1 transition, 5 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_01516@rel:R25-11#49a6743f
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#9f5e769b2026-09-30
  • R22-11rel:R22-11#d8dde2912026-10-14
  • R23-11rel:R23-11#98b8947b2026-10-14
  • R24-11rel:R24-11#a73be3ff2026-10-14
  • R25-11rel:R25-11#49a6743f2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

फ़ंक्शन DataTransferReadByPushHandler [SWS_DM_01517] Upstream: RS_Diag_04135

DataTransferReadByPushHandler (DataTransferReadByPushHandler &&other) noexcept=default;

Move constructs an instance of this class.

Header-Datei#include "ara/diag/data_transfer.h"
Scopeclass ara::diag::DataTransferReadByPushHandler
Exception-Sicherheitexception safe

Parameter (out)

ParameterBeschreibung
otherThe other object

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01517
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01517@rel:R25-11#11dbab1d
Content hash
11dbab1d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01517
Status: valid/unmigrated Version: rel:R25-11#7e951d87 Versionshistorie & Revisions (1 transition, 5 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_01517@rel:R25-11#7e951d87
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#cf1ac9f92026-09-30
  • R22-11rel:R22-11#f70fc75f2026-10-14
  • R23-11rel:R23-11#0fe43a672026-10-14
  • R24-11rel:R24-11#b4cb6e672026-10-14
  • R25-11rel:R25-11#7e951d872026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

फ़ंक्शन DataTransferReadByPushHandler [SWS_DM_01518] Upstream: RS_Diag_04135

DataTransferReadByPushHandler (DataTransferReadByPushHandler const &)=delete;

Handlers shall not be copy-able since only one way usage i.e. per single file transfer session.

Header-Datei#include "ara/diag/data_transfer.h"
Scopeclass ara::diag::DataTransferReadByPushHandler

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01518
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01518@rel:R25-11#9bee607b
Content hash
9bee607b
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01518
Status: valid/unmigrated Version: rel:R25-11#a724748f Versionshistorie & Revisions (1 transition, 5 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_01518@rel:R25-11#a724748f
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#90c604c32026-09-30
  • R22-11rel:R22-11#9fb9734c2026-10-14
  • R23-11rel:R23-11#44c63dd52026-10-14
  • R24-11rel:R24-11#08b9bed72026-10-14
  • R25-11rel:R25-11#a724748f2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

फ़ंक्शन ExitRead [SWS_DM_01523] Upstream: RS_Diag_04135

virtual auto ExitRead (DataTransferExitType exit_type, ara::core::Span< const ara::core::Byte > transfer_request_parameter_ record, MetaInfo const &meta_info, CancellationHandler cancellation_ handler) noexcept -> ara::core::Future< ara::core::Vector< ara::core::Byte > >=0;

Exits an ongoing data transfer session.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: eefe02828ffe उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

वर्चुअल मेथड ExitRead डायग्नोस्टिक हैंडलर [SWS_DM_01523] के संदर्भ में एक चालू डेटा ट्रांसमिशन सत्र को समाप्त करता है। फ़ंक्शन एसिंक्रोनस रूप से काम करता है और बाइट वेक्टर के रूप में प्रतिक्रिया डेटा के साथ एक ara::core::Future लौटाता है SWS Diagnostics §8.10.3.1.3.1 “ExitRead”।

पैरामीटर और कॉल संदर्भ

  • exit_type (DataTransferExitType): ट्रांसमिशन समाप्त करने का कारण निर्दिष्ट करता है [SWS_DM_01523]।
  • transfer_request_parameter_record (ara::core::Span<const ara::core::Byte>): डेटा स्थानांतरण का समर्थन करने के लिए निर्माता-विशिष्ट पैरामीटर शामिल करता है। संबंधित Promise के पूरा होने या प्रसंस्करण रद्द होने तक अंतर्निहित डेटा को मान्य रहना चाहिए [SWS_DM_01523]।
  • meta_info (MetaInfo const &): डायग्नोस्टिक अनुरोध की मेटा-जानकारी पास करता है [SWS_DM_01523]।
  • cancellation_handler (CancellationHandler): सत्र रद्द होने की स्थिति में IsCanceled() के माध्यम से रद्दीकरण स्थिति की जाँच करने या SetNotifier() के माध्यम से एक कॉलबैक फ़ंक्शन पंजीकृत करने के लिए उपयोग किया जाता है [SWS_DM_01523]।

त्रुटि प्रबंधन और रिटर्न मान

सफलता की स्थिति में Future आउटपुट डेटा प्रदान करता है, जिसे SID के बाद सकारात्मक UDS प्रतिक्रिया में transferResponseParameterRecord के रूप में रखा जाता है [SWS_DM_01523]। विफलता के मामले में Future को ISO 14229-1 के अनुसार DiagUdsNrcErrc से उपयुक्त नेगेटिव रिस्पॉन्स कोड (NRC) के साथ पूरा किया जाता है [SWS_DM_01523]।

समवर्तीता और जीवनचक्र

मेथड को अपवाद-सुरक्षित (exception safe), लेकिन स्पष्ट रूप से गैर-थ्रेड-सुरक्षित (not thread-safe) के रूप में निर्दिष्ट किया गया है [SWS_DM_01523]। ऑब्जेक्ट जीवनचक्र के संबंध में एक बाध्यकारी क्रम स्थिति है: DataTransferReadByPushHandler के किसी इंस्टेंस को किसी भी स्थिति में ExitRead() को कॉल करने से पहले नष्ट नहीं किया जाना चाहिए [SWS_DM_01519]। डेटा स्थानांतरण में संबंधित हैंडलर कक्षाओं के लिए समान आवश्यकताएं लागू होती हैं [SWS_DM_01510] [SWS_DM_01499]।

यह पाठ AUTOSAR Adaptive R25-11 विनिर्देश के आधार पर एक AI द्वारा तैयार किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I2)

Header-Datei#include "ara/diag/data_transfer.h"
Scopeclass ara::diag::DataTransferReadByPushHandler
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
exit_typeSpecifies the exit reason
transfer_request_This parameter record contains parameter(s), which are required
parameter_recordby the server to support the transfer of data. Format and length of this parameter(s) are vehicle manufacturer specific. Lifetime: Valid until Promise is fulfilled or the processing is cancelled by the cancellationHandler.
meta_infoMetaInfo of the request.
cancellation_handlerThis parameter is used to • Query the current cancellation status by calling cancellation_ handler.IsCanceled(). Returns true in case, the current conversation has been cancelled and false otherwise. • Register a notifier function by calling cancellation_handler.Set Notifier(). The registered notifier is called if the current conversation is cancelled.

Rückgabewert

TypBeschreibung
ara::core::Future<ara::core::Vector<ara::core::Byte > >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.response_data will be placed after SID as transferResponseParameterRecord in the positive response.

Fehler

FehlercodeBeschreibung
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_01523
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01523@rel:R25-11#c5bf7ec6
Content hash
c5bf7ec6
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01523
Status: valid/unmigrated Version: rel:R25-11#028dde2a Versionshistorie & Revisions (1 transition, 5 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_01523@rel:R25-11#028dde2a
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#50d94e4c2026-09-30
  • R22-11rel:R22-11#2702570e2026-10-14
  • R23-11rel:R23-11#730065222026-10-14
  • R24-11rel:R24-11#ddf661402026-10-14
  • R25-11rel:R25-11#028dde2a2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

फ़ंक्शन Read [SWS_DM_01522] Upstream: RS_Diag_04135

virtual auto Read (std::size_t recommended_number_bytes_to_return, MetaInfo const &meta_info, CancellationHandler cancellation_handler) noexcept -> ara::core::Future< ara::core::Vector< ara::core::Byte > >=0;

Reads data chunk from the application. The first or subsequent file/directory info content chunk to be sent back to the UDS client will be composed by the application and its ownership is passed as a result to ara::diag.

एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: fcd7efa833df उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

क्लास ara::diag::DataTransferReadByPushHandler का विशुद्ध वर्चुअल मेथड Read एप्लिकेशन से फ़ाइल या निर्देशिका जानकारी के लिए डेटा ब्लॉक्स के एसिंक्रोनस पठन हेतु उपयोग किया जाता है [SWS_DM_01522]। एप्लिकेशन संबंधित डेटा चंक को संकलित करता है और इसका स्वामित्व ara::core::Vector<ara::core::Byte> के रूप में डायग्नोस्टिक मॉड्यूल को सौंपता है।

उपयोग और कॉल संदर्भ

कॉल डायग्नोस्टिक सर्वर द्वारा हेडर फ़ाइल ara/diag/data_transfer.h [SWS_DM_01522] के माध्यम से UDS क्लाइंट्स के लिए प्रतिक्रिया डेटा प्रदान करने हेतु की जाती है। मेथड तीन पैरामीटर्स की अपेक्षा करता है:

  • recommended_number_bytes_to_return: इष्टतम थ्रूपुट के लिए बाइट्स की अनुशंसित संख्या। यह मान संभवतः Diagnostic Management के आंतरिक बफ़र या PDU आकार पर आधारित होने की संभावना है। प्रश्न Q-1a8c1270b192b96f (खुला)
  • meta_info: आने वाले डायग्नोस्टिक अनुरोध की अतिरिक्त मेटा-जानकारी (MetaInfo)।
  • cancellation_handler: cancellation_handler.IsCanceled() के माध्यम से रद्दीकरण स्थिति की क्वेरी करने या कनेक्शन टूटने की स्थिति में cancellation_handler.SetNotifier() का उपयोग करके एक अधिसूचना पंजीकृत करने में सक्षम बनाता है।

रिटर्न मान के रूप में एक ara::core::Future<ara::core::Vector<ara::core::Byte>> काम करता है। सफल प्रसंस्करण पर डेटा को अनुक्रम काउंटर के बाद transferResponseParameterRecord के रूप में सकारात्मक प्रतिक्रिया संदेश में एम्बेड किया जाता है [SWS_DM_01522]।

त्रुटि हैंडलिंग और समवर्तीता

यदि प्रसंस्करण विफल हो जाता है, तो Future को DiagUdsNrcErrc से एक त्रुटि कोड के साथ पूरा किया जाता है, जो ISO 14229-1 के अनुसार एक उपयुक्त NRC को मैप करता है [SWS_DM_01522]। यदि सेवा द्वारा इंटरफ़ेस अभी तक या अब offer() के माध्यम से पेश नहीं किया गया है, तो Diagnostic Manager अनुरोध का उत्तर NRC 0x94 (ResourceTemporarilyNotAvailable) के साथ देता है [SWS_DM_01257]। मेथड को अपवाद-सुरक्षित (exception safe), लेकिन गैर-थ्रेड-सुरक्षित (not thread-safe) के रूप में निर्दिष्ट किया गया है [SWS_DM_01522], इसलिए समवर्ती कॉल्स को एप्लिकेशन पक्ष पर सिंक्रोनाइज़ किया जाना चाहिए।

इंटरैक्शन

इस इंटरफ़ेस का पुश सिद्धांत डायग्नोस्टिक मॉड्यूल के वैकल्पिक पठन तंत्रों को पूरक बनाता है: पूर्वनिर्धारित मेमोरी क्षेत्र के साथ ara::diag::DataTransferReadByPullHandler::Read [SWS_DM_01513] के माध्यम से पुल विधि और साथ ही ReleaseHandler [SWS_DM_01504] का उपयोग करके साझा मेमोरी क्षेत्र का प्रावधान।

यह पाठ AI द्वारा उत्पन्न किया गया था।

इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)

Header-Datei#include "ara/diag/data_transfer.h"
Scopeclass ara::diag::DataTransferReadByPushHandler
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
recommended_number_The recommended number of bytes to send back to DM in order to
bytes_to_returnget optimum data throughput.
meta_infoMetaInfo of the request.
cancellation_handlerThis parameter is used to • Query the current cancellation status by calling cancellation_ handler.IsCanceled(). Returns true in case, the current conversation has been cancelled and false otherwise. • Register a notifier function by calling cancellation_handler.Set Notifier(). The registered notifier is called if the current conversation is cancelled.

Rückgabewert

TypBeschreibung
ara::core::Future<ara::core::Vector<ara::core::Byte > >A Future, which either gets readied to ReadPushOutput (transfer ResponseParameterRecord for a positive response message) or readied with ErrorCode from DiagUdsNrcErrc (for a negative response message). Data in ReadPushOutput.responseData will be placed after block SequenceCounter as transferResponseParameterRecord in the positive response.

Fehler

FehlercodeBeschreibung
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_01522
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01522@rel:R25-11#30b348ee
Content hash
30b348ee
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01522
Status: valid/unmigrated Version: rel:R25-11#e7e79431 Versionshistorie & Revisions (1 transition, 5 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_01522@rel:R25-11#e7e79431
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#3e8fc1bb2026-09-30
  • R22-11rel:R22-11#3462fde32026-10-14
  • R23-11rel:R23-11#6dd9bce12026-10-14
  • R24-11rel:R24-11#cb10a5162026-10-14
  • R25-11rel:R25-11#e7e794312026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

फ़ंक्शन operator= [SWS_DM_01520] Upstream: RS_Diag_04135

auto operator= (DataTransferReadByPushHandler &&other) & noexcept -> DataTransferReadByPushHandler & =default;

Move assigns an instance of this class.

Header-Datei#include "ara/diag/data_transfer.h"
Scopeclass ara::diag::DataTransferReadByPushHandler
Exception-Sicherheitexception safe

Parameter (out)

ParameterBeschreibung
otherThe other object

Rückgabewert

TypBeschreibung
DataTransferReadByPushHandlerReference to self

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01520
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01520@rel:R25-11#c49dc321
Content hash
c49dc321
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01520
Status: valid/unmigrated Version: rel:R25-11#d4049469 Versionshistorie & Revisions (1 transition, 5 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_01520@rel:R25-11#d4049469
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#2ce931892026-09-30
  • R22-11rel:R22-11#62287d5f2026-10-14
  • R23-11rel:R23-11#96e4f4012026-10-14
  • R24-11rel:R24-11#ae7f03fd2026-10-14
  • R25-11rel:R25-11#d40494692026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

फ़ंक्शन operator= [SWS_DM_01521] Upstream: RS_Diag_04135

auto operator= (DataTransferReadByPushHandler const &) -> DataTransfer ReadByPushHandler &=delete;

Handlers shall not be assignable since only one way usage i.e. per single file transfer session.

Header-Datei#include "ara/diag/data_transfer.h"
Scopeclass ara::diag::DataTransferReadByPushHandler

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01521
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01521@rel:R25-11#47a93f89
Content hash
47a93f89
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01521
Status: valid/unmigrated Version: rel:R25-11#18457d2d Versionshistorie & Revisions (1 transition, 5 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_01521@rel:R25-11#18457d2d
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#434ea9332026-09-30
  • R22-11rel:R22-11#e3d9fab02026-10-14
  • R23-11rel:R23-11#95ae839d2026-10-14
  • R24-11rel:R24-11#18457d2d2026-10-14
  • R25-11rel:R25-11#18457d2d2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

फ़ंक्शन ~DataTransferReadByPushHandler [SWS_DM_01519] Upstream: RS_Diag_04135

virtual ~DataTransferReadByPushHandler () noexcept=default;

Destructs an instance of this class. An instance of this class must not be destroyed before ExitRead() is called

Header-Datei#include "ara/diag/data_transfer.h"
Scopeclass ara::diag::DataTransferReadByPushHandler
Exception-Sicherheitexception safe

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01519
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01519@rel:R25-11#06098050
Content hash
06098050
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01519
Status: valid/unmigrated Version: rel:R25-11#0df2ec41 Versionshistorie & Revisions (1 transition, 5 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_01519@rel:R25-11#0df2ec41
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#745728c02026-09-30
  • R22-11rel:R22-11#adf1131d2026-10-14
  • R23-11rel:R23-11#565380862026-10-14
  • R24-11rel:R24-11#0fbf5f402026-10-14
  • R25-11rel:R25-11#0df2ec412026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill