DEENESPTFRRUARHIKOZHNL

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

[SWS_DM_01548] Upstream: RS_Diag_04135

class DataTransferReadSession final {...};

Encapsulates all data transfer reading variants.

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

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

सक्रिय डायग्नोस्टिक्स-समर्थित रीड ट्रांसफ़र को संपुटित करता है और आने वाले डेटा ट्रांसफ़र को पंजीकृत हैंडलर तक अग्रेषित करता है।
एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 9db606b147f6 उद्गम खुले प्रश्न (2)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

सक्रिय डायग्नोस्टिक्स-समर्थित रीड ट्रांसफ़र को संपुटित करता है और आने वाले डेटा ट्रांसफ़र को पंजीकृत हैंडलर तक अग्रेषित करता है।

यह क्लास [SWS_DM_01548] के अनुसार एडेप्टिव AUTOSAR डायग्नोस्टिक्स मॉड्यूल के भीतर डायग्नोस्टिक्स-आधारित रीड ट्रांसफ़र के सभी प्रकारों के संपुटेशन और संरचित प्रबंधन का कार्य करती है। एक रीड ऑपरेशन के सफल आरंभ के बाद, Diagnostic-Server इंस्टेंस अनुक्रमिक डेटा ब्लॉक ट्रांसफ़र के साथ-साथ सत्र समापन के लिए आने वाले अनुरोधों को रीड-हैंडलर [SWS_DM_01317] के पंजीकृत मेथडों को सौंपता है। मूव सेमेंटिक्स के एक साथ समर्थन के साथ कॉपी ऑपरेशनों के लक्षित निष्क्रियकरण के माध्यम से, यह क्लास अंतर्निहित ट्रांसफ़र सत्र के एक विशिष्ट स्वामित्व असाइनमेंट की गारंटी देती है।

संदर्भ

क्लास ara::diag::DataTransferReadSession एडेप्टिव डायग्नोस्टिक्स मॉड्यूल [SWS_DM_01548] में डेटा ब्लॉकों के डायग्नोस्टिक्स-समर्थित पठन के लिए सभी प्रकारों के संपुटेशन का प्रतिनिधित्व करती है। RequestFileTransfer (0x38), TransferData (0x36) और RequestTransferExit (0x37) जैसी मानकीकृत UDS सेवाओं के हिस्से के रूप में, यह सत्र क्लास डायग्नोस्टिक सर्वर के आंतरिक रनटाइम वातावरण और एप्लिकेशन-विशिष्ट रीड हैंडलर SWS Diagnostics §7 “Realization of TransferData and RequestTransferExit” के बीच एक कड़ी के रूप में कार्य करती है। यह सुनिश्चित करती है कि चालू रीड ऑपरेशन — जैसे कि ReadFile [SWS_DM_01314] के माध्यम से फ़ाइलों के लिए या ReadDir [SWS_DM_01315] के माध्यम से डायरेक्टरी के लिए — पृथक रूप से प्रबंधित किए जाएँ और संबद्ध हैंडलर को अग्रेषित किए जाएँ।

DataTransferReadSessionContext client Diagnose-Client (Tester) server Diagnostic Server (ara::diag) client->server UDS RequestFileTransfer TransferData / Exit session ara::diag::DataTransferReadSession (Transfersitzung) server->session verwaltet Lesesitzung handler Lese-Handler (Applikation) session->handler delegiert Read() / Exit()

संदर्भ आरेख: डायग्नोस्टिक सर्वर और एप्लिकेशन हैंडलर के बीच DataTransferReadSession का अंतःस्थापन। स्रोत: [SWS_DM_01317], [SWS_DM_01318], SWS Diagnostics §7 “Realization of TransferData and RequestTransferExit”

जीवनचक्र

ara::diag::DataTransferReadSession का एक इंस्टेंस ट्रांसफ़र सत्र से सख्ती से जुड़े जीवनकाल को धारण करता है। डिफ़ॉल्ट कंस्ट्रक्टर के माध्यम से निर्माण स्पष्ट रूप से निषिद्ध है [SWS_DM_01549]। इसके बजाय, सत्र को विशेष टेम्पलेट कंस्ट्रक्टरों के माध्यम से प्रारंभ किया जाता है, जो एप्लिकेशन-विशिष्ट हैंडलर को पंजीकृत करते हैं SWS Diagnostics §7 “Realization of TransferData and RequestTransferExit”। व्यवहार में इंस्टेंसिएशन आमतौर पर फ़ाइल स्थानांतरण की शुरुआत में डायग्नोस्टिक सर्वर या सर्विस हैंडलर द्वारा किया जाना चाहिए। प्रश्न Q-b0706bcd28c702c6 (खुला)

एकाधिक असाइनमेंट या असंगत सत्र स्थितियों को बाहर करने के लिए, ara::diag::DataTransferReadSession को एक गैर-प्रतिलिपि योग्य एकल इंस्टेंस के रूप में डिज़ाइन किया गया है: कॉपी कंस्ट्रक्टर [SWS_DM_01553] और कॉपी असाइनमेंट ऑपरेटर [SWS_DM_01554] दोनों हटा दिए गए हैं (=delete)। स्वामित्व का स्थानांतरण विशेष रूप से मूव सेमेंटिक्स के माध्यम से प्रदान किया गया है। मूव कंस्ट्रक्टर [SWS_DM_01551] और मूव असाइनमेंट ऑपरेटर [SWS_DM_01552] को noexcept=default के रूप में परिभाषित किया गया है। विनाश नियतात्मक रूप से डिस्ट्रक्टर [SWS_DM_01550] के माध्यम से होता है, जिसे noexcept=default के रूप में भी घोषित किया गया है। संभवतः, RequestTransferExit के माध्यम से ट्रांसफ़र पूरा होने पर ऑब्जेक्ट रिलीज़ हो जाता है। प्रश्न Q-c1999fd1f283a007 (खुला)

उपयोग पथ

एक रीड ट्रांसफ़र सत्र का विशिष्ट प्रवाह तीन क्रमिक चरणों में विभाजित होता है:

  • आरंभीकरण: एक बाहरी डायग्नोस्टिक क्लाइंट ReadFile (0x04) [SWS_DM_01314] या ReadDir (0x05) [SWS_DM_01315] जैसे रीड मोड के साथ RequestFileTransfer भेजता है। इसके द्वारा सत्र इंस्टेंस बनाया जाता है और रीड हैंडलर पंजीकृत किया जाता है।
  • डेटा ट्रांसफ़र: डायग्नोस्टिक सर्वर टेम्पलेट कंस्ट्रक्टरों के माध्यम से पंजीकृत हैंडलर के संगत Read मेथड को कॉल करके TransferData (0x36) प्रकार के आने वाले डायग्नोस्टिक अनुरोधों को संसाधित करता है [SWS_DM_01317]। यह प्रत्येक अनुरोधित डेटा ब्लॉक के लिए पुनरावृत्ति से होता है।
  • समापन: जैसे ही सारा डेटा स्थानांतरित हो जाता है, क्लाइंट RequestTransferExit (0x37) भेजता है। इसके बाद डायग्नोस्टिक सर्वर रीड ऑपरेशन को व्यवस्थित रूप से समाप्त करने के लिए पंजीकृत हैंडलर के Exit मेथड को कॉल करता है [SWS_DM_01318]।
फ़ाइल-आधारित रीड ट्रांसफ़र का अनुक्रमडायग्नोस्टिक क्लाइंटDiagnostic ServerDataTransferReadSessionRequestFileTransfer (0x38)ReadFile / ReadDirInitialisierung viaTemplate-KonstruktorPositiv-Response (0x78)loopजब तक डेटा ब्लॉक ट्रांसफ़र किए जा रहे हैंTransferData (0x36)Read()Gelesene BlockdatenTransferData Positiv-ResponseRequestTransferExit (0x37)Exit()समापन की पुष्टिRequestTransferExit Response

अनुक्रम आरेख: पंजीकृत सत्र को सौंपने के साथ UDS रीड ट्रांसफ़र का कॉल अनुक्रम। स्रोत: [SWS_DM_01314], [SWS_DM_01315], [SWS_DM_01317], [SWS_DM_01318]

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

चूँकि ara::diag::DataTransferReadSession को final के रूप में घोषित किया गया है और डिफ़ॉल्ट कंस्ट्रक्टर [SWS_DM_01549] मौजूद नहीं है, इसलिए पंजीकृत हैंडलर के बिना गलत निर्माण को कंपाइल समय पर ही रोका जाता है। इसी तरह, हटाए गए कॉपी ऑपरेशन [SWS_DM_01553] सत्र स्थितियों के आकस्मिक डुप्लीकेशन को रोकते हैं। मूव कंस्ट्रक्शन, मूव असाइनमेंट और विनाश दोनों अपने noexcept विनिर्देश के माध्यम से पूर्ण अपवाद सुरक्षा की गारंटी देते हैं [SWS_DM_01551] [SWS_DM_01550]। यदि हैंडलर में डेटा ब्लॉक प्रदान करना विफल हो जाता है, तो इसे प्रोटोकॉल स्तर पर UDS संचार के हिस्से के रूप में संभाला जाता है।

यह गाइड AUTOSAR Adaptive Platform R25-11 विनिर्देश (मॉड्यूल diag) पर आधारित है और ara::diag::DataTransferReadSession की आवश्यकताओं को संक्षेप में प्रस्तुत करता है।

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

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

2

ऑपरेटर

1

क्लास आरेख

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

G nara__diag__DataTransferReadSession318 DataTransferReadSession + DataTransferReadSession() + ~DataTransferReadSession() + operator=()

विवरण दृश्य

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

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

DataTransferReadSession फ़ंक्शन 3

No default construction allowed.

ओवरलोड DataTransferReadSession 3
DataTransferReadSession ()=delete; SWS_DM_01549
DataTransferReadSession (DataTransferReadSession &&other) noexcept=default; SWS_DM_01551
DataTransferReadSession (DataTransferReadSession const &)=delete; SWS_DM_01553
~DataTransferReadSession फ़ंक्शन

Destructs an instance of this class.

~DataTransferReadSession () noexcept=default;

ऑपरेटर

operator= फ़ंक्शन 2

Move assigns an instance of this class.

ओवरलोड = 2
auto operator= (DataTransferReadSession &&other) & noexcept -> Data TransferReadSession & =default; SWS_DM_01552
auto operator= (DataTransferReadSession const &) -> DataTransferRead Session &=delete; SWS_DM_01554

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

फ़ंक्शन DataTransferReadSession [SWS_DM_01549] Upstream: RS_Diag_04135

DataTransferReadSession ()=delete;

No default construction allowed.

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

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

Record
AUTOSAR/AP/record/SWS_DM_01549
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01549@rel:R25-11#0fb47081
Content hash
0fb47081
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01549
Status: valid/unmigrated Version: rel:R25-11#b12b963b 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_01549@rel:R25-11#b12b963b
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#c4cbcc0b2026-09-30
  • R22-11rel:R22-11#99668fac2026-10-14
  • R23-11rel:R23-11#f616e79a2026-10-14
  • R24-11rel:R24-11#b12b963b2026-10-14
  • R25-11rel:R25-11#b12b963b2026-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

फ़ंक्शन DataTransferReadSession [SWS_DM_01551] Upstream: RS_Diag_04135

DataTransferReadSession (DataTransferReadSession &&other) noexcept=default;

Move constructs an instance of this class.

Header-Datei#include "ara/diag/data_transfer.h"
Scopeclass ara::diag::DataTransferReadSession
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_01551
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01551@rel:R25-11#bf35adc4
Content hash
bf35adc4
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01551
Status: valid/unmigrated Version: rel:R25-11#9d8ef11f 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_01551@rel:R25-11#9d8ef11f
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#21edf1762026-09-30
  • R22-11rel:R22-11#313c13512026-10-14
  • R23-11rel:R23-11#ab0c46e72026-10-14
  • R24-11rel:R24-11#5b475da32026-10-14
  • R25-11rel:R25-11#9d8ef11f2026-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

फ़ंक्शन DataTransferReadSession [SWS_DM_01553] Upstream: RS_Diag_04135

DataTransferReadSession (DataTransferReadSession const &)=delete;

DataTransferReadSession shall be a single not copy-able instance.

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

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

Record
AUTOSAR/AP/record/SWS_DM_01553
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01553@rel:R25-11#9ff23be9
Content hash
9ff23be9
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01553
Status: valid/unmigrated Version: rel:R25-11#fbc13491 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_01553@rel:R25-11#fbc13491
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#a630ea6c2026-09-30
  • R22-11rel:R22-11#35a6d77b2026-10-14
  • R23-11rel:R23-11#c1d834202026-10-14
  • R24-11rel:R24-11#6803928e2026-10-14
  • R25-11rel:R25-11#fbc134912026-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_01552] Upstream: RS_Diag_04135

auto operator= (DataTransferReadSession &&other) & noexcept -> Data TransferReadSession & =default;

Move assigns an instance of this class.

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

Parameter (out)

ParameterBeschreibung
otherThe other object

Rückgabewert

TypBeschreibung
DataTransferReadSessionReference to self

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

Record
AUTOSAR/AP/record/SWS_DM_01552
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01552@rel:R25-11#03190e3d
Content hash
03190e3d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01552
Status: valid/unmigrated Version: rel:R25-11#d99670ce 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_01552@rel:R25-11#d99670ce
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#457fd3d02026-09-30
  • R22-11rel:R22-11#85ce121e2026-10-14
  • R23-11rel:R23-11#e7bc25f92026-10-14
  • R24-11rel:R24-11#826c7d1b2026-10-14
  • R25-11rel:R25-11#d99670ce2026-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_01554] Upstream: RS_Diag_04135

auto operator= (DataTransferReadSession const &) -> DataTransferRead Session &=delete;

DataTransferReadSession shall be a single not assign-able instance.

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

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

Record
AUTOSAR/AP/record/SWS_DM_01554
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01554@rel:R25-11#34de2eda
Content hash
34de2eda
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01554
Status: valid/unmigrated Version: rel:R25-11#8d7ab93b 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_01554@rel:R25-11#8d7ab93b
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#a2fa062f2026-09-30
  • R22-11rel:R22-11#609b1c622026-10-14
  • R23-11rel:R23-11#22a9c8aa2026-10-14
  • R24-11rel:R24-11#c9a88d712026-10-14
  • R25-11rel:R25-11#8d7ab93b2026-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

फ़ंक्शन ~DataTransferReadSession [SWS_DM_01550] Upstream: RS_Diag_04135

~DataTransferReadSession () noexcept=default;

Destructs an instance of this class.

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

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

Record
AUTOSAR/AP/record/SWS_DM_01550
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01550@rel:R25-11#a9a5a0c2
Content hash
a9a5a0c2
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01550
Status: valid/unmigrated Version: rel:R25-11#0b5bb2a2 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_01550@rel:R25-11#0b5bb2a2
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#d3c560642026-09-30
  • R22-11rel:R22-11#18bafff82026-10-14
  • R23-11rel:R23-11#bfe91d802026-10-14
  • R24-11rel:R24-11#94e05f472026-10-14
  • R25-11rel:R25-11#0b5bb2a22026-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