DEENESPTFRRUARHIKOZHNL

क्लास apext::diag::uds_transport::UdsTransportProtocolMgr

[SWS_DM_00306] Upstream: RS_Diag_04147, RS_Diag_04168

class UdsTransportProtocolMgr {...};

The UdsTransportProtocolMgr class manages the interaction between the Diagnostic Server instance(s) and various UDS Transport Protocols (e.g., DoIP[2], CAN[21]). It provides a standard, extensible API for handling transport-specific message reception and optional early payload access.

Literaturverzeichnis SWS Diagnostics: [2] ISO 13400-2:2019 – Road vehicles – Diagnostic communication over Internet Protocol (DoIP) – Part 2: Network and transport layer requirements and services (Edition 2, Release 2019-12) – www.iso.org
[21] ISO 15765-2 – Road vehicles – Diagnostics on Controller Area Networks (CAN) – Part2: Network layer services

Header-Datei#include "apext/diag/uds_transport/protocol_mgr.h"
Forwarding-Header#include "apext/diag/diag_fwd.h"
Scopenamespace apext::diag::uds_transport

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

परिवहन परत प्लगइन्स और Diagnostic Server के सत्र स्तर के बीच UDS संदेश विनिमय का समन्वय करता है।
एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: d6f6643e28ac उद्गम खुले प्रश्न (2)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

परिवहन परत प्लगइन्स और Diagnostic Server के सत्र स्तर के बीच UDS संदेश विनिमय का समन्वय करता है।

वर्ग apext::diag::uds_transport::UdsTransportProtocolMgr AUTOSAR AP SWS Diagnostics §7.1.1 “Support of UDS Transport Layer” के अनुसार Diagnostic Server और विशिष्ट UDS परिवहन प्रोटोकॉल के बीच परस्पर क्रिया का प्रबंधन करता है। यह पूर्व-संकेत (pre-indication) और सत्र परत को अतुल्यकालिक अग्रेषण के साथ-साथ प्रेषण और जीवनचक्र घटनाओं ([SWS_DM_00309], [SWS_DM_00311]) की प्रतिपुष्टि के माध्यम से दो-चरणीय संदेश प्राप्ति को नियंत्रित करता है। सभी इंटरफ़ेस कॉल अपवाद-सुरक्षित हैं, लेकिन थ्रेड-सुरक्षित रूप से डिज़ाइन नहीं किए गए हैं।

संदर्भ

वर्ग apext::diag::uds_transport::UdsTransportProtocolMgr AUTOSAR AP SWS Diagnostics §7.1.1 “Support of UDS Transport Layer” के अनुसार Diagnostic Server के उदाहरणों या DM-Core (सत्र परत) और विभिन्न UDS परिवहन प्रोटोकॉल जैसे DoIP या CAN के बीच एक केंद्रीय मध्यस्थ इकाई के रूप में कार्य करता है। यह एक विस्तार योग्य इंटरफ़ेस प्रदान करता है जिसके माध्यम से कार्यान्वयन-विशिष्ट परिवहन प्लगइन्स, जो बेस क्लास UdsTransportProtocolHandler को प्राप्त करते हैं ([SWS_DM_00315]), आने वाले UDS संदेशों की रिपोर्ट करते हैं और डायग्नोस्टिक कोर को परिवहन पुष्टिकरण अग्रेषित करते हैं। व्याख्या: विषम परिवहन इंटरफ़ेस को समान रूप से संयोजित करने के लिए Diagnostic Management द्वारा इस प्रबंधक के उदाहरण को एक दीर्घकालिक मध्यस्थ घटक के रूप में संचालित किए जाने की संभावना है। प्रश्न Q-79e155960156d04a (खुला)

MgrKontext SessionLayer Session Layer (DM Core) Mgr UdsTransportProtocolMgr Mgr->SessionLayer T_Data.ind Handler UdsTransportProtocolHandler Handler->Mgr IndicateMessage / HandleMessage Handler->Mgr TransmitConfirmation Handler->Mgr HandlerStopped / ChannelReestablished PeriodicHandler UdsTransportProtocolPeriodicHandler PeriodicHandler->Mgr PeriodicTransmitConfirmation

संदर्भ आरेख: परिवहन परत हैंडलर और सत्र परत के बीच UdsTransportProtocolMgr का अंतःस्थापन। स्रोत: [SWS_DM_00309], [SWS_DM_00311], [SWS_DM_00312], [SWS_DM_01069], AUTOSAR AP SWS Diagnostics §7.1.1 “Support of UDS Transport Layer”।

जीवनचक्र

विनाश वर्चुअल डिस्ट्रक्टर ~UdsTransportProtocolMgr() के माध्यम से होता है, जिसे noexcept = default के साथ निर्दिष्ट किया गया है ([SWS_DM_01524])। संचालन के दौरान, प्रबंधक AUTOSAR AP SWS Diagnostics §7.1.1.1 “Initialization, Starting and Stopping of a UDS TransportLayer” और [SWS_DM_00329] के अनुसार पंजीकृत परिवहन प्रोटोकॉल हैंडलर्स की जीवनचक्र घटनाओं पर प्रतिक्रिया करता है: यदि कोई हैंडलर शट डाउन होता है, तो वह HandlerStopped() ([SWS_DM_00314]) के माध्यम से प्रबंधक को इसके पूरा होने की सूचना देता है। यदि पहले से डिस्कनेक्ट किया गया चैनल फिर से उपलब्ध हो जाता है, तो पूर्व सक्रियण के बाद ChannelReestablished() के माध्यम से GlobalChannelIdentifier निर्दिष्ट करते हुए प्रबंधक को इसकी सूचना दी जाती है ([SWS_DM_00313], [SWS_DM_09021])।

स्वामित्व के संबंध में, संदेश प्रसंस्करण के दौरान अद्वितीय-पॉइंटर सिमेंटिक्स (unique-pointer semantics) का उपयोग करते हुए सख्त बफर स्थानांतरण लागू होता है: डायग्नोस्टिक कोर किसी संदेश की घोषणा पर ऑब्जेक्ट UdsMessagePtr बनाता है और इसे भरने के लिए अस्थायी रूप से हैंडलर को सौंप देता है ([SWS_DM_00309])। सफल प्राप्ति के बाद या संचरण विफलता की स्थिति में, संदेश का स्वामित्व पूरी तरह से जेनेरिक DM कोर को वापस कर दिया जाता है ([SWS_DM_00310], [SWS_DM_00311])। इंटरफ़ेस की सभी कॉलबैक विधियों को अपवाद-सुरक्षित (noexcept) के रूप में वर्गीकृत किया गया है, लेकिन स्पष्ट रूप से गैर-थ्रेड-सुरक्षित ([SWS_DM_00309], [SWS_DM_00311]) के रूप में वर्गीकृत किया गया है।

उपयोग पथ

UDS संदेश प्राप्ति का नियमित प्रवाह दो क्रमिक चरणों में विभाजित है। सबसे पहले, परिवहन हैंडलर IndicateMessage() ([SWS_DM_00309]) के माध्यम से संदेश की शुरुआत का संकेत देता है। यहां स्रोत और गंतव्य पते, एड्रेसिंग प्रकार (भौतिक या कार्यात्मक), चैनल ID, कुल आकार और पहले पेलोड डेटा का एक बाइट दृश्य (payloadInfo) पास किया जाता है। यह अग्रिम जानकारी डायग्नोस्टिक कोर को आवश्यकताओं का समय से पहले मूल्यांकन करने की अनुमति देती है, उदाहरण के लिए कार्यात्मक Tester Present ([SWS_DM_00309]) की पहचान के लिए। यदि कोर अनुरोध स्वीकार करता है, तो प्रबंधक IndicationResult::kIndicationOk और भरे जाने वाले संदेश बफर की जोड़ी लौटाता है।

जैसे ही परिवहन हैंडलर को पूरा संदेश प्राप्त हो जाता है, वह इसे HandleMessage() के माध्यम से सत्र परत को अग्रेषित करता है ([SWS_DM_00311])। यह ISO 14229-2 के प्रिमिटिव T_Data.ind से मेल खाता है। व्याख्या: HandleMessage() की आवश्यक तत्काल वापसी को सत्र परत के आंतरिक कतार में सौंपकर कार्यान्वित किए जाने की संभावना है, क्योंकि वास्तविक प्रसंस्करण पृष्ठभूमि में अतुल्यकालिक रूप से होना चाहिए ([SWS_DM_00311])। हैंडलर पूरा होने के बाद TransmitConfirmation() ([SWS_DM_00312]) के माध्यम से आउटगोइंग ट्रांसमिशन की पुष्टि करता है, जबकि आवधिक संदेशों को PeriodicTransmitConfirmation() ([SWS_DM_01069]) के माध्यम से पावती दी जाती है। प्रश्न Q-b6e97504ca3a3a95 (खुला)

UDS संदेश रिसेप्शन का प्रवाहUdsTransportProtocolHandlerUdsTransportProtocolMgrSession LayerUse Case: संदेश घोषणाIndicateMessage(sourceAddr, targetAddr, type, channel, size, payloadInfo)Puffer anfordern & Validierungstd::pair(kIndicationOk, messagePtr)std::pair(kIndicationOk, messagePtr)Use Case: डेटा रिसेप्शन और ट्रांसफरNutzdaten in message schreibenHandleMessage(messagePtr)T_Data.ind(messagePtr)त्वरित वापसी (एसिंक्रोनस)वापसी

अनुक्रम आरेख: IndicateMessage और HandleMessage के माध्यम से UDS संदेश प्राप्ति का विशिष्ट प्रवाह। स्रोत: [SWS_DM_00309], [SWS_DM_00311]।

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

यदि DM कोर किसी घोषित संदेश को स्वीकार नहीं कर सकता है, तो IndicateMessage() पहले ही विफल हो जाता है। गणना IndicationResult इसके लिए त्रुटि कारणों को kIndicationOccupied (चैनल व्यस्त), kIndicationOverflow (बफर ओवरफ़्लो) या kIndicationUnknownTargetAddress (अज्ञात गंतव्य पता) के रूप में परिभाषित करती है, जिसके बाद कोई संदेश बफर प्रदान नहीं किया जाता है ([SWS_DM_00309], [SWS_DM_00384])।

यदि सफल संकेत के बाद परिवहन परत स्तर पर चल रहे संचरण के दौरान कोई त्रुटि होती है, जिससे कि कोई HandleMessage() पूरा नहीं हो पाता है, तो हैंडलर को अनिवार्य रूप से NotifyMessageFailure() को कॉल करना होगा ([SWS_DM_00310])। इसके द्वारा, पहले से आवंटित संदेश बफर को नियंत्रित तरीके से सत्र परत को वापस कर दिया जाता है और मुक्त कर दिया जाता है। प्रेषण कार्यों के मामले में, TransmitConfirmation() परिणाम की सूचना TransmissionResult के माध्यम से देता है; यदि नेटवर्क स्तर पर प्रेषण विफल हो जाता है, तो kTransmitFailed प्रेषित किया जाता है ([SWS_DM_00307], [SWS_DM_00312])।

यह मार्गदर्शिका विशेष रूप से R25-11 के लिए AUTOSAR विनिर्देश पर आधारित है।

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

KI-gestützte Gruppierung auf Basis der Records und Spezifikationsauszüge; keine Gliederung aus der AUTOSAR-Spezifikation.

क्लास आरेख

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

G napext__diag__uds_transport__UdsTransportProtocolMgr247 UdsTransportProtocolMgr + ~UdsTransportProtocolMgr() + ChannelReestablished() + HandleMessage() + HandlerStopped() + IndicateMessage() + NotifyMessageFailure() + PeriodicTransmitConfirmation() + TransmitConfirmation()

विवरण दृश्य

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

Objektlebenszyklus

~UdsTransportProtocolMgr फ़ंक्शन

Destructor of class UdsTransportProtocolMgr.

virtual ~UdsTransportProtocolMgr () noexcept=default;

Nachrichtenempfang

HandleMessage फ़ंक्शन

Hands over a valid received UDS message (currently this is only a request type) from the Transport Layer to the Session Layer. This corresponds to T_Data.ind of Figure 2 from ISO 14229-2[25]. The behavior is asynchronously, i.e. the UDS Message is handed over to the Session Layer and it is expected, that it "instantly" returns, which means, that real processing of the message shall be done asynchronously by the Transport Layer!

virtual void HandleMessage (UdsMessagePtr message) noexcept=0;
IndicateMessage फ़ंक्शन

Indicates a message start. This is an interface, which is just served/called by UdsTransportProtocolHandlers, which return TRUE from UdsTransportProtocolHandlers::isStartOfMessageIndicationSupported().

virtual std::pair< IndicationResult, UdsMessagePtr > IndicateMessage ( UdsMessage::Address sourceAddr, UdsMessage::Address targetAddr, Uds Message::TargetAddressType type, GlobalChannelIdentifier globalChannel Id, std::size_t size, ara::core::Span< const std::uint8_t > payload Info) noexcept=0;
IndicationResult एन्यूमरेशन

Allowed return values from the DM Server to the Transport Protocol Handler Instance for the received IndicateMessage.

enum class IndicationResult : std::uint8_t {...};

Fehlerbehandlung

NotifyMessageFailure फ़ंक्शन

Indicates, that the message indicated via IndicateMessage() has failure and will not lead to a final HandleMessage() call.

virtual void NotifyMessageFailure (UdsMessagePtr message) noexcept=0;

Sendebestätigung

PeriodicTransmitConfirmation फ़ंक्शन

Confirmation of sent messages and number.

virtual void PeriodicTransmitConfirmation (ara::core::Vector< Uds MessageConstPtr > messages, std::size_t numberOfSentMessages) noexcept=0;
TransmitConfirmation फ़ंक्शन

Notification about the outcome of a transmit request called by core DM at the handler via Uds TransportProtocolHandler::Transmit(). This transmit API covers T_Data.con of ISO 14229-2[25] Figure 2.

virtual void TransmitConfirmation (UdsMessageConstPtr message, TransmissionResult result) noexcept=0;
TransmissionResult एन्यूमरेशन

Values denoting the Transmission Confirmation Result provided by the Transport Protocol Handler Instance to the DM Server.

enum class TransmissionResult : std::uint8_t {...};

Kanal- und Handlersteuerung

ChannelReestablished फ़ंक्शन

Notification call from the given transport protocol channel, that it has been reestablished since the last (Re)Start from the UdsTransportProtocolHandler to which this channel belongs. To activate this notification a previous call to UdsTransportProtocolHandler::Notify Reestablishment() has to be done. See further documentation at UdsTransport ProtocolHandler::NotifyReestablishment().

virtual void ChannelReestablished (GlobalChannelIdentifier global ChannelId) noexcept=0;
HandlerStopped फ़ंक्शन

Notification call from handler, that it has stopped now (e.g. closed down network connections, freed resources, etc...) This callback is expected as a reaction from handler to a call to UdsTransportProtocol Handler::Stop().

virtual void HandlerStopped (UdsTransportProtocolHandlerID handlerId) noexcept=0;
GlobalChannelIdentifier टाइप उपनाम

Type of tuple to pack UdsTransportProtocolHandlerID and ChannelID together, to form a global unique (among all used UdsTransportProtocolHandlers within DM) identifier of a Uds TransportProtocol channel.

using GlobalChannelIdentifier = std::tuple<UdsTransportProtocolHandler ID, ChannelID>;

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

फ़ंक्शन ChannelReestablished [SWS_DM_00313] Upstream: RS_AP_00120, RS_AP_00121, RS_AP_00122, RS_Diag_04147, RS_Diag_04168

virtual void ChannelReestablished (GlobalChannelIdentifier global ChannelId) noexcept=0;

Notification call from the given transport protocol channel, that it has been reestablished since the last (Re)Start from the UdsTransportProtocolHandler to which this channel belongs. To activate this notification a previous call to UdsTransportProtocolHandler::Notify Reestablishment() has to be done. See further documentation at UdsTransport ProtocolHandler::NotifyReestablishment().

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

उपयोग

क्लास apext::diag::uds_transport::UdsTransportProtocolMgr का मेथड ChannelReestablished UDS ट्रांसपोर्ट प्रोटोकॉल कार्यान्वयन से Diagnostic Management (DM) को एक फीडबैक के रूप में कार्य करता है कि एक कम्युनिकेशन चैनल (पुनः) प्रारंभ के बाद फिर से उपलब्ध है [SWS_DM_00313]। जैसे ही ChannelID द्वारा दर्शाए गए नेटवर्क चैनल की पुनः-उपलब्धता का पता चलता है, ट्रांसपोर्ट प्रोटोकॉल कार्यान्वयन इस मेथड को ठीक एक बार कॉल करता है [SWS_DM_00358]। पैरामीटर के रूप में globalChannelId पास किया जाता है, जिसमें अपने स्वयं के handlerIdent और ChannelID [SWS_DM_00358] का टुपल शामिल होता है।

अंतःक्रिया और जीवन चक्र

अधिसूचना के लिए पूर्वापेक्षा NotifyReestablishment [SWS_DM_00313], [SWS_DM_00356] का पूर्ववर्ती कॉल है। विशिष्ट उपयोग का मामला रीस्टार्ट के बाद सकारात्मक प्रतिक्रिया के विकल्प के साथ एक ECU रीसेट (UDS सेवा 0x11) का निष्पादन है [SWS_DM_00326]। DM के रीस्टार्ट के बाद भी अधिसूचना सुनिश्चित करने के लिए, ट्रांसपोर्ट प्रोटोकॉल द्वारा अधिसूचना अनुरोध को स्थायी रूप से संग्रहीत किया जाना चाहिए [SWS_DM_00359]।

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

फ़ंक्शन का कोई रिटर्न मान नहीं है और इसे noexcept (exception safe) के रूप में निर्दिष्ट किया गया है [SWS_DM_00313]। चूँकि इंटरफ़ेस को नॉन-थ्रेड-सेफ़ (not thread-safe) के रूप में वर्गीकृत किया गया है [SWS_DM_00313], इसलिए कॉलिंग हैंडलर्स को एक्सेस को बाह्य रूप से सिंक्रोनाइज़ करना पड़ सकता है। प्रश्न Q-aaf14893457cceb6 (खुला) समय संबंधी प्रतिबंध के रूप में, DM ChannelReestablished के कॉल को UdsTransportProtocolHandler::Start के कॉल के बाद ही प्रोसेस कर सकता है [SWS_DM_01744]।

यह पाठ AUTOSAR विनिर्देश R25-11 के आधार पर एक AI द्वारा स्वचालित रूप से जनरेट किया गया था।

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

Header-Datei#include "apext/diag/uds_transport/protocol_mgr.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolMgr
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
globalChannelIdtransport protocol channel, which is available again.

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_DM_00313
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00313@rel:R25-11#951fec48
Content hash
951fec48
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00313
Status: valid/unmigrated Version: rel:R25-11#4c5b70ac 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_00313@rel:R25-11#4c5b70ac
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#dacc8bb22026-09-30
  • R19-11rel:R19-11#acd4155f2026-10-14
  • R20-11rel:R20-11#9235fd502026-10-14
  • R21-11rel:R21-11#b392eb2d2026-10-14
  • R22-11rel:R22-11#b01162a42026-10-14
  • R23-11rel:R23-11#f88cee172026-10-14
  • R24-11rel:R24-11#867edbc12026-10-14
  • R25-11rel:R25-11#4c5b70ac2026-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

फ़ंक्शन HandleMessage [SWS_DM_00311] Upstream: RS_Diag_04147, RS_Diag_04168

virtual void HandleMessage (UdsMessagePtr message) noexcept=0;

Hands over a valid received UDS message (currently this is only a request type) from the Transport Layer to the Session Layer. This corresponds to T_Data.ind of Figure 2 from ISO 14229-2[25]. The behavior is asynchronously, i.e. the UDS Message is handed over to the Session Layer and it is expected, that it "instantly" returns, which means, that real processing of the message shall be done asynchronously by the Transport Layer!

Literaturverzeichnis SWS Diagnostics: [25] ISO 14229-2(2021) – Unified diagnostic services (UDS) - Part 2: Session layer services (Release 2021-10) – www.iso.org

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

मेथड HandleMessage पूरी तरह से प्राप्त, वैध UDS अनुरोध संदेश को ट्रांसपोर्ट लेयर से डायग्नोस्टिक मैनेजमेंट ([SWS_DM_00311]) के सेशन लेयर में स्थानांतरित करने का काम करती है। यह ISO 14229-2 ([SWS_DM_00311], AUTOSAR_AP_SWS_Diagnostics §C.2.1.2.2.2 “HandleMessage”) के अनुसार सेवा T_Data.ind से मेल खाती है।

कॉल और पैरामीटर

जैसे ही ट्रांसपोर्ट प्रोटोकॉल कार्यान्वयन पहले IndicateMessage के माध्यम से अनुरोधित बफ़र के पेलोड को भर देता है ([SWS_DM_00388]), यह apext::diag::uds_transport::UdsTransportProtocolMgr के इंस्टेंस पर HandleMessage को कॉल करता है ([SWS_DM_00345])। UdsMessagePtr प्रकार का message एक तर्क के रूप में पास किया जाता है। std::unique_ptr सिमेंटिक्स के माध्यम से, UDS संदेश का स्वामित्व जेनेरिक DM कोर ([SWS_DM_00311]) में वापस चला जाता है। फ़ंक्शन कोई रिटर्न मान नहीं देता है।

सिमेंटिक्स, समवर्तीता और त्रुटि प्रबंधन

  • अतुल्यकालिकता (Asynchrony): कॉल को तुरंत लौटना चाहिए (“instantly returns”) ([SWS_DM_00311])। व्याख्या: डायग्नोस्टिक अनुरोध का वास्तविक प्रसंस्करण DM-कोर में एक अलग निष्पादन संदर्भ (execution context) में अतुल्यकालिक रूप से जारी रखा जा सकता है। प्रश्न Q-b8dd1a5f3d2dcdf0 (खुला)
  • त्रुटि की स्थिति: विधि को noexcept के रूप में घोषित किया गया है और यह अपवाद-सुरक्षित (exception-safe) है ([SWS_DM_00311])। यदि संदेश का रिसेप्शन या भराव (filling) विफल हो जाता है, तो HandleMessage का कोई कॉल नहीं होना चाहिए; इसके बजाय त्रुटि को NotifyMessageFailure के माध्यम से रिपोर्ट किया जाना चाहिए ([SWS_DM_00310])।
  • थ्रेड-सुरक्षा: ऑपरेशन को not thread-safe के रूप में निर्दिष्ट किया गया है ([SWS_DM_00311])। कॉलर्स को समान इंस्टेंस पर समवर्ती एक्सेस को सिंक्रनाइज़ करना होगा।

इंटरैक्शन

यह इंटरफ़ेस ट्रांसपोर्ट प्रोटोकॉल लेयर से संबंधित है और इसे एप्लिकेशन-साइड सर्विस-प्रोसेसिंग विधि ara::diag::GenericUDSService::HandleMessage ([SWS_DM_00618]) से अलग किया जाना चाहिए।

यह पाठ स्वचालित रूप से तैयार किया गया था। सभी विवरण पूरी तरह से विनिर्देशन स्थिति R25-11 पर आधारित हैं।

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

Header-Datei#include "apext/diag/uds_transport/protocol_mgr.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolMgr
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
messageThe UDS message ptr (unique_ptr semantics) with the request. Ownership of the UDS Message is given back to the generic DM core here.

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_DM_00311
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00311@rel:R25-11#d5bbb51d
Content hash
d5bbb51d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00311
Status: valid/unmigrated Version: rel:R25-11#25c5615f 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_00311@rel:R25-11#25c5615f
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#1d9aefcf2026-09-30
  • R19-11rel:R19-11#cb8d6db52026-10-14
  • R20-11rel:R20-11#307c47612026-10-14
  • R21-11rel:R21-11#307c47612026-10-14
  • R22-11rel:R22-11#fd0648c82026-10-14
  • R23-11rel:R23-11#4d3583a52026-10-14
  • R24-11rel:R24-11#779e87e62026-10-14
  • R25-11rel:R25-11#25c5615f2026-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

फ़ंक्शन HandlerStopped [SWS_DM_00314] Upstream: RS_AP_00120, RS_AP_00121, RS_AP_00122, RS_Diag_04147, RS_Diag_04168

virtual void HandlerStopped (UdsTransportProtocolHandlerID handlerId) noexcept=0;

Notification call from handler, that it has stopped now (e.g. closed down network connections, freed resources, etc...) This callback is expected as a reaction from handler to a call to UdsTransportProtocol Handler::Stop().

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

प्रबंधन इंटरफ़ेस apext::diag::uds_transport::UdsTransportProtocolMgr की शुद्ध वर्चुअल कॉलबैक विधि HandlerStopped एक UDS ट्रांसपोर्ट प्लगइन से Diagnostic Manager (DM) को एक फीडबैक के रूप में कार्य करती है कि इसका निष्पादन समाप्त हो गया है और सभी संबंधित संसाधन तथा नेटवर्क कनेक्शन पूरी तरह से रिलीज कर दिए गए हैं [SWS_DM_00314]। इस कॉल की अपेक्षा हैंडलर द्वारा UdsTransportProtocolHandler::Stop() के पूर्व कॉल की अनिवार्य प्रतिक्रिया के रूप में की जाती है [SWS_DM_00314], [SWS_DM_00323]।

कॉल संदर्भ और पैरामीटर: प्रभावित प्लगइन कॉल के समय प्रकार UdsTransportProtocolHandlerID के इनपुट पैरामीटर handlerId के माध्यम से अपनी पहचान करता है [SWS_DM_00314]। विधि का कोई रिटर्न मान नहीं होता है (void) और noexcept के रूप में विनिर्देश के माध्यम से पूर्ण अपवाद-सुरक्षा (exception safe) सुनिश्चित करती है [SWS_DM_00314]। इस इंटरफ़ेस के लिए कोई विशिष्ट त्रुटि कोड, त्रुटि प्रतिक्रियाएँ या DET अथवा DEM को संदेश परिभाषित नहीं हैं।

प्रक्रिया और प्रतिबंध: यदि Diagnostic Manager शटडाउन के दौरान स्थिति ApplicationState.kTerminating में बदलता है, तो वह पहले प्रत्येक शुरू किए गए UDS ट्रांसपोर्ट प्रोटोकॉल कार्यान्वयन पर Stop() को कॉल करता है [SWS_DM_00333]। Stop() से लौटने के बाद, एक सख्त कॉल निषेध लागू होता है: हैंडलर प्लगइन HandlerStopped [SWS_DM_01741], [SWS_DM_00323] को छोड़कर UdsTransportProtocolMgr के विरुद्ध किसी भी अन्य विधि को कॉल नहीं कर सकता है। DM प्रक्रिया के अंतिम समापन से पहले, यह उपयुक्त handlerId [SWS_DM_00340] के साथ संबंधित HandlerStopped कॉलबैक के आने की प्रतीक्षा करता है। इंटरफ़ेस को गैर-थ्रेड-सुरक्षित (not thread-safe) के रूप में चिह्नित किया गया है [SWS_DM_00314]। व्याख्या: चूंकि DM कॉलबैक के आने की अलग से प्रतीक्षा करता है, इसलिए प्लगइन में नेटवर्क कनेक्शन का वास्तविक समापन Stop() विधि की वापसी के साथ अतुल्यकालिक (asynchronous) रूप से होना चाहिए। प्रश्न Q-40829d46bd661337 (खुला)

यह उपयोग नोट AUTOSAR विनिर्देश R25-11 के आधार पर स्वचालित रूप से तैयार किया गया था।

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

Header-Datei#include "apext/diag/uds_transport/protocol_mgr.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolMgr
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
handlerIdindication, which plugin stopped.

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_DM_00314
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00314@rel:R25-11#5dd4b5b4
Content hash
5dd4b5b4
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00314
Status: valid/unmigrated Version: rel:R25-11#0cc2f185 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_00314@rel:R25-11#0cc2f185
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#8489c37a2026-09-30
  • R19-11rel:R19-11#4212b1402026-10-14
  • R20-11rel:R20-11#f5d072332026-10-14
  • R21-11rel:R21-11#d2e1ff562026-10-14
  • R22-11rel:R22-11#0b5685c52026-10-14
  • R23-11rel:R23-11#43fb4c882026-10-14
  • R24-11rel:R24-11#33d1abec2026-10-14
  • R25-11rel:R25-11#0cc2f1852026-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

फ़ंक्शन IndicateMessage [SWS_DM_00309] Upstream: RS_AP_00120, RS_AP_00121, RS_AP_00122, RS_Diag_04147, RS_Diag_04168

virtual std::pair< IndicationResult, UdsMessagePtr > IndicateMessage ( UdsMessage::Address sourceAddr, UdsMessage::Address targetAddr, Uds Message::TargetAddressType type, GlobalChannelIdentifier globalChannel Id, std::size_t size, ara::core::Span< const std::uint8_t > payload Info) noexcept=0;

Indicates a message start. This is an interface, which is just served/called by UdsTransportProtocolHandlers, which return TRUE from UdsTransportProtocolHandlers::isStartOfMessageIndicationSupported().

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

क्लास apext::diag::uds_transport::UdsTransportProtocolMgr की विधि IndicateMessage [SWS_DM_00309] को UdsTransportProtocolHandler द्वारा सिंक्रोनस रूप से कॉल किया जाता है जब UDS संदेश की प्राप्ति की शुरुआत का संकेत दिया जाना हो और हैंडलर इसका समर्थन करता हो। कॉलर स्रोत और गंतव्य पता (sourceAddr, targetAddr), एड्रेसिंग प्रकार type (भौतिक या कार्यात्मक), चैनल ID globalChannelId, अपेक्षित कुल आकार size और वैकल्पिक रूप से पहले से प्राप्त पेलोड का एक बाइट दृश्य (payloadInfo) पास करता है। payloadInfo में कम से कम दो बाइट्स प्रदान करने की अनुशंसा की जाती है, ताकि Diagnostic Management Core चल रहे प्रसंस्करण के दौरान भी परीक्षक-उपस्थित (बाईपास तर्क) जैसे कार्यात्मक अनुरोधों की पहचान कर सके AUTOSAR_AP_SWS_Diagnostics §7.1 “UDS Transport Layer”।

रिटर्न मान के रूप में, सिंक्रोनस और अपवाद-सुरक्षित कॉल IndicationResult [SWS_DM_00384] और एक UdsMessagePtr [SWS_DM_00309] से एक std::pair लौटाता है:

  • स्वीकृति: यदि संदेश को संसाधित किया जा सकता है, तो DM Core मान्य UdsMessagePtr के साथ IndicationResult::kIndicationOk लौटाता है, जिसकी न्यूनतम क्षमता कम से कम एक बाइट होती है [SWS_DM_00385]।
  • अस्वीकृति और त्रुटि मामले: यदि DM व्यस्त है, तो वह kIndicationOccupied और nullptr के साथ उत्तर देता है [SWS_DM_00386]। अमान्य गंतव्य पते के मामले में, शून्य पॉइंटर (null pointer) के साथ kIndicationUnknownTargetAddress लौटाया जाता है। अन्य परिभाषित स्थिति मान kIndicationOverflow [SWS_DM_00384] हैं।

समवर्तीता और जीवनकाल के संबंध में, विधि को गैर-थ्रेड-सुरक्षित (not thread-safe) निर्दिष्ट किया गया है [SWS_DM_00309]; इसलिए कॉल्स को तदनुसार सिंक्रनाइज़ किया जाना चाहिए। payloadInfo के माध्यम से पास किया गया दृश्य अस्थायी है और इसका उपयोग केवल इसी फ़ंक्शन कॉल के भीतर किया जाना चाहिए [SWS_DM_00309]।

आगे की प्रक्रिया में, kIndicationOk लौटाए जाने पर, ट्रांसपोर्ट परत GetPayload [SWS_DM_00301] के माध्यम से प्रदान किए गए बफ़र को क्षमता सीमा या पूर्ण संदेश लंबाई तक भरती है [SWS_DM_00388]। सफल भरण के बाद, HandleMessage को कॉल किया जाता है [SWS_DM_00345]। यदि संदेश प्राप्ति समय से पहले विफल हो जाती है, तो हैंडलर को NotifyMessageFailure [SWS_DM_00310] के माध्यम से बफ़र को DM को वापस करना होगा।

यह पाठ एक AI द्वारा तैयार किया गया है और केवल मार्गदर्शन के लिए है।

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

Header-Datei#include "apext/diag/uds_transport/protocol_mgr.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolMgr
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
sourceAddrUDS source address of the message.
targetAddrUDS target address of the message.
typeIndication whether the request is kPhysical or kFunctional addressed.
globalChannelIdTransport Protocol Channel on which the message start happened.
sizeSize in bytes of the UdsMessage starting from SID.
payloadInfoView onto the first received payload bytes, if any. This view shall be used only within this function call. It is recommended that the Transport Protocol provides at least the first two bytes of the request message, so the DM can identify a functional Tester Present. Lifetime: Valid until Promise is fulfilled or the processing is cancelled by the cancellationHandler.

Rückgabewert

TypBeschreibung
std::pair< IndicationResult, UdsMessagePtr>Pair of IndicationResult and a pointer to UDS Message owned/created by DM core and returned to the handler to get filled.

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

Record
AUTOSAR/AP/record/SWS_DM_00309
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00309@rel:R25-11#a5217b93
Content hash
a5217b93
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00309
Status: valid/unmigrated Version: rel:R25-11#38e7de31 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_00309@rel:R25-11#38e7de31
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#04055a8d2026-09-30
  • R19-11rel:R19-11#bfb192392026-10-14
  • R20-11rel:R20-11#8e14a6b72026-10-14
  • R21-11rel:R21-11#66a0b1c12026-10-14
  • R22-11rel:R22-11#2f212c252026-10-14
  • R23-11rel:R23-11#1d9e17452026-10-14
  • R24-11rel:R24-11#674af7dd2026-10-14
  • R25-11rel:R25-11#38e7de312026-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

फ़ंक्शन NotifyMessageFailure [SWS_DM_00310] Upstream: RS_Diag_04147, RS_Diag_04168

virtual void NotifyMessageFailure (UdsMessagePtr message) noexcept=0;

Indicates, that the message indicated via IndicateMessage() has failure and will not lead to a final HandleMessage() call.

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

उपयोग

प्योर वर्चुअल मेथड NotifyMessageFailure हेडर apext/diag/uds_transport/protocol_mgr.h के माध्यम से इंटरफ़ेस apext::diag::uds_transport::UdsTransportProtocolMgr में प्रदान किया जाता है [SWS_DM_00310]। इसका उपयोग ट्रांसपोर्ट प्रोटोकॉल कार्यान्वयन द्वारा Diagnostic Management को यह सूचित करने के लिए किया जाता है कि IndicateMessage() के माध्यम से पहले संकेतित संदेश विफल हो गया है और अब HandleMessage() का कोई अंतिम कॉल [SWS_DM_00345] नहीं होगा [SWS_DM_00310]। पैरामीटर के रूप में प्रकार UdsMessagePtr का पॉइंटर message पास किया जाता है, जिससे प्रभावित संदेश सेशन लेयर को वापस सौंप दिया जाता है [SWS_DM_00310]। कोई रिटर्न मान मौजूद नहीं है (void)।

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

फ़ंक्शन को noexcept और एक्सेप्शन-सुरक्षित के रूप में घोषित किया गया है [SWS_DM_00310]। यह कोई एक्सेप्शन नहीं फेंकता है और ट्रांसमिशन निरस्तीकरण की सूचना विशुद्ध रूप से पैरामीटर इंटरफ़ेस के माध्यम से देता है। कन्करेंसी के संबंध में, मेथड को नॉन-थ्रेड-सेफ़ (not thread-safe) के रूप में वर्गीकृत किया गया है [SWS_DM_00310]। Interpretation: ट्रांसपोर्ट प्रोटोकॉल स्तर पर समानांतर प्रोसेसिंग के दौरान कॉलर्स को बाहरी सिंक्रोनाइज़ेशन सुनिश्चित करना पड़ सकता है। प्रश्न Q-8d9b3a3561b9b6ac (खुला)

परस्पर क्रिया और प्रवाह

नियमित प्रवाह में, ट्रांसपोर्ट प्रोटोकॉल एक सफल IndicateMessage() के बाद UdsMessage [SWS_DM_00388] के पेलोड को भरता है और इसे HandleMessage() के माध्यम से Diagnostic Management को अग्रेषित करता है [SWS_DM_00345]। हालाँकि, यदि ट्रांसमिशन विफल हो जाता है – उदाहरण के लिए मल्टी-फ़्रेम अनुरोध के रिसेप्शन के दौरान त्रुटियों पर –, तो इसके बजाय NotifyMessageFailure को कॉल किया जाता है [SWS_DM_00310]। यह बाद के प्रोसेसिंग कॉल्स को रोकता है और सेशन मैनेजमेंट को प्रभावित करता है: जबकि रिसेप्शन की शुरुआत में S3Server टाइमर को रोक दिया जाता है [SWS_DM_00383], किसी मल्टी-फ़्रेम संदेश की रिसेप्शन त्रुटि के कारण S3Server टाइमर रीसेट हो जाता है और शुरुआत से फिर से गिनना शुरू करता है (SWS Diagnostics §7.3.2.7 “Session handling” / [SWS_DM_00310])।

यह उपयोग संबंधी निर्देश AUTOSAR विनिर्देश R25-11 के आधार पर एक AI द्वारा जनरेट किया गया था।

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

Header-Datei#include "apext/diag/uds_transport/protocol_mgr.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolMgr
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
messagePointer to the UDS Message handed back over to the Session Layer.

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_DM_00310
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00310@rel:R25-11#0bf0236a
Content hash
0bf0236a
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00310
Status: valid/unmigrated Version: rel:R25-11#533ed88a 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_00310@rel:R25-11#533ed88a
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#e7beffc22026-09-30
  • R19-11rel:R19-11#bf0753592026-10-14
  • R20-11rel:R20-11#126bf37a2026-10-14
  • R21-11rel:R21-11#da1ddcf72026-10-14
  • R22-11rel:R22-11#f198f39e2026-10-14
  • R23-11rel:R23-11#501c9dff2026-10-14
  • R24-11rel:R24-11#c8c1a8962026-10-14
  • R25-11rel:R25-11#533ed88a2026-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

फ़ंक्शन PeriodicTransmitConfirmation [SWS_DM_01069] Upstream: RS_Diag_04215

virtual void PeriodicTransmitConfirmation (ara::core::Vector< Uds MessageConstPtr > messages, std::size_t numberOfSentMessages) noexcept=0;

Confirmation of sent messages and number.

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

उपयोग

विशुद्ध वर्चुअल मेथड PeriodicTransmitConfirmation क्लास apext::diag::uds_transport::UdsTransportProtocolMgr का एक घटक है और हेडर फ़ाइल apext/diag/uds_transport/protocol_mgr.h के माध्यम से घोषित किया गया है [SWS_DM_01069]। यह भेजे गए आवधिक डायग्नोस्टिक संदेशों की पुष्टि करने और सफलतापूर्वक भेजे गए संदेशों की संख्या संप्रेषित करने का कार्य करता है AUTOSAR_AP_SWS_Diagnostics §C.2.1.2.2.6 “PeriodicTransmitConfirmation”।

कॉल किए जाने पर दो इनपुट पैरामीटर पास किए जाते हैं, जबकि मेथड कोई रिटर्न वैल्यू नहीं देता है:

  • messages (ara::core::Vector<UdsMessageConstPtr>): संदेशों की वही क्रमित सूची, जो पहले मेथड UdsTransportProtocolPeriodicHandler::PeriodicTransmit() को पास की गई थी [SWS_DM_01069]।
  • numberOfSentMessages (std::size_t): सूची messages से सफलतापूर्वक प्रेषित संदेशों की संख्या [SWS_DM_01069]।

त्रुटि प्रबंधन और अपवाद सुरक्षा

एक्सेप्शन सुरक्षा के संबंध में, इंटरफ़ेस को exception safe के रूप में निर्दिष्ट किया गया है और पहचानकर्ता noexcept प्रदान किया गया है [SWS_DM_01069]। इस प्रकार यह कोई C++ एक्सेप्शन नहीं फेंकता है। DET या DEM के माध्यम से विशिष्ट एरर कोड या एरर संदेश इस पुष्टिकरण फ़ंक्शन के लिए विनिर्देश में परिभाषित नहीं हैं।

समवर्तीता और सीमांत शर्तें

विनिर्देश के अनुसार फ़ंक्शन को थ्रेड-सुरक्षित नहीं (not thread-safe) के रूप में वर्गीकृत किया गया है [SWS_DM_01069]। इसलिए उसी इंस्टेंस पर समवर्ती कॉल सुरक्षित नहीं हैं और कॉलर द्वारा समन्वित की जानी चाहिए।

इंटरैक्शन

फ़ंक्शन सीधे आवधिक प्रेषण अनुक्रम से जुड़ता है: यह UdsTransportProtocolPeriodicHandler::PeriodicTransmit() के कॉल के बाद वास्तव में भेजे गए संदेशों की पुष्टि प्राप्त करता है AUTOSAR_AP_SWS_Diagnostics §C.2.1.2.2.6 “PeriodicTransmitConfirmation”। आवश्यकता स्तर पर, फ़ंक्शन अपस्ट्रीम आवश्यकता RS_Diag_04215 को सौंपा गया है [SWS_DM_01069]।

यह उपयोग नोट AUTOSAR R25-11 विनिर्देश के आधार पर एक AI द्वारा जनरेट किया गया था।

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

Header-Datei#include "apext/diag/uds_transport/protocol_mgr.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolMgr
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
messagesThe same ordered list of messages previously passed to Uds TransportProtocolPeriodicHandler::Periodic Transmit().
numberOfSentMessagesThe number of successfully sent messages from the "messages" list.

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_DM_01069
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01069@rel:R25-11#363f0e5d
Content hash
363f0e5d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01069
Status: valid/unmigrated Version: rel:R25-11#53ff341c Versionshistorie & Revisions (1 transition, 7 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_01069@rel:R25-11#53ff341c
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#bcf47ee92026-09-30
  • R20-11rel:R20-11#92ace4d82026-10-14
  • R21-11rel:R21-11#cd6fd2542026-10-14
  • R22-11rel:R22-11#55d5fcb22026-10-14
  • R23-11rel:R23-11#389cb5052026-10-14
  • R24-11rel:R24-11#986d318f2026-10-14
  • R25-11rel:R25-11#53ff341c2026-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

फ़ंक्शन TransmitConfirmation [SWS_DM_00312] Upstream: RS_Diag_04172, RS_Diag_04147, RS_Diag_04168

virtual void TransmitConfirmation (UdsMessageConstPtr message, TransmissionResult result) noexcept=0;

Notification about the outcome of a transmit request called by core DM at the handler via Uds TransportProtocolHandler::Transmit(). This transmit API covers T_Data.con of ISO 14229-2[25] Figure 2.

Literaturverzeichnis SWS Diagnostics: [25] ISO 14229-2(2021) – Unified diagnostic services (UDS) - Part 2: Session layer services (Release 2021-10) – www.iso.org

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

उपयोग

इंटरफ़ेस apext::diag::uds_transport::UdsTransportProtocolMgr की शुद्ध वर्चुअल विधि TransmitConfirmation Diagnostic Management (DM) को एक ट्रांसमिशन जॉब पूरा होने की सूचना देने के लिए उपयोग की जाती है, जिसे पहले DM द्वारा UdsTransportProtocolHandler::Transmit के माध्यम से शुरू किया गया था [SWS_DM_00312] [SWS_DM_00348]। यह फ़ंक्शन ISO 14229-2 [SWS_DM_00312] के अनुसार प्रिमिटिव सर्विस T_Data.con को कार्यान्वित करता है।

कॉल करने पर दो पैरामीटर पास किए जाते हैं [SWS_DM_00312]:

  • message (UdsMessageConstPtr): UDS संदेश का पॉइंटर, जो पहले IndicateMessage() में प्रदान किया गया था और जिसके ट्रांसमिशन की पावती दी जाती है [SWS_DM_00312]।
  • result (TransmissionResult): ट्रांसमिशन का परिणाम इंगित करता है। यदि नेटवर्क लेयर UDS प्रतिक्रिया को सफलतापूर्वक नेटवर्क पर आउटपुट करने में सक्षम थी, तो मान को kTransmitOk पर सेट किया जाना चाहिए, अन्यथा kTransmitFailed पर [SWS_DM_00351] SWS Diagnostics §7.1.1.3 “Confirmation Result”।

विधि का कोई रिटर्न मान नहीं है (void) और इसे noexcept के रूप में घोषित किया गया है, जिसके कारण इसे अपवाद-सुरक्षित तरीके से निष्पादित किया जाना चाहिए [SWS_DM_00312]।

समवर्तीता और सिस्टम व्यवहार

इंटरफ़ेस को स्पष्ट रूप से गैर-थ्रेड-सुरक्षित के रूप में निर्दिष्ट किया गया है [SWS_DM_00312]। इसलिए समवर्ती नेटवर्क या हैंडलर संदर्भों से कॉल के लिए ट्रांसपोर्ट प्रोटोकॉल कार्यान्वयन द्वारा बाहरी सिंक्रनाइज़ेशन की आवश्यकता हो सकती है। प्रश्न Q-e540ca89c3f61ecb (खुला)

इसके अलावा, कॉल प्रमाणीकरण प्रबंधन (authentication management) को प्रभावित करता है: यदि कोई क्लाइंट मानक सत्र में और kAuthenticated स्थिति में है, तो Diagnostic Server उसे स्थिति kDeAuthenticated में ले जाता है, यदि अंतिम TransmitConfirmation के बाद authenticationTimeout की अवधि के लिए कोई नया अनुरोध प्राप्त नहीं होता है [SWS_DM_01210]।

यह पाठ एक AI द्वारा जनरेट किया गया था और यह तकनीकी मार्गदर्शन के लिए कार्य करता है।

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

Header-Datei#include "apext/diag/uds_transport/protocol_mgr.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolMgr
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
messageFor which message (created in IndicateMessage()) this is the confirmation.
resultResult of transmission. In case the UDS message could be transmitted on network layer kTransmitOk, else kTransmitFailed.

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_DM_00312
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00312@rel:R25-11#4b8c7ab5
Content hash
4b8c7ab5
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00312
Status: valid/unmigrated Version: rel:R25-11#222a75d3 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_00312@rel:R25-11#222a75d3
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#677d428f2026-09-30
  • R19-11rel:R19-11#212d61dd2026-10-14
  • R20-11rel:R20-11#a10ea9422026-10-14
  • R21-11rel:R21-11#71d0b62f2026-10-14
  • R22-11rel:R22-11#550859bf2026-10-14
  • R23-11rel:R23-11#54312aac2026-10-14
  • R24-11rel:R24-11#9aca7ec12026-10-14
  • R25-11rel:R25-11#222a75d32026-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

फ़ंक्शन ~UdsTransportProtocolMgr [SWS_DM_01524] Upstream: RS_AP_00134

virtual ~UdsTransportProtocolMgr () noexcept=default;

Destructor of class UdsTransportProtocolMgr.

Header-Datei#include "apext/diag/uds_transport/protocol_mgr.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolMgr
Exception-Sicherheitexception safe

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

Record
AUTOSAR/AP/record/SWS_DM_01524
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01524@rel:R25-11#b5e2ca19
Content hash
b5e2ca19
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01524
Status: valid/unmigrated Version: rel:R25-11#573fe30c 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_01524@rel:R25-11#573fe30c
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#49e2bed92026-09-30
  • R22-11rel:R22-11#d451921a2026-10-14
  • R23-11rel:R23-11#91e882962026-10-14
  • R24-11rel:R24-11#df6540502026-10-14
  • R25-11rel:R25-11#573fe30c2026-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

एन्यूमरेशन का प्रलेखन

एन्यूमरेशन IndicationResult [SWS_DM_00384] Upstream: RS_Diag_04147, RS_Diag_04168

enum class IndicationResult :            std::uint8_t {...};

Allowed return values from the DM Server to the Transport Protocol Handler Instance for the received IndicateMessage.

Header-Datei#include "apext/diag/uds_transport/protocol_mgr.h"
Forwarding-Header#include "apext/diag/diag_fwd.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolMgr
SymbolIndicationResult
Basistypstd::uint8_t

Werte

EnumeratorBeschreibung
kIndicationOk=0 Indication Ok.
kIndicationOccupied=1 Indication Occupied.
kIndicationOverflow=2 Indication Overflow.
kIndicationUnknownTargetAddress=3 Indication UnknownTargetAddress.

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

Record
AUTOSAR/AP/record/SWS_DM_00384
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00384@rel:R25-11#b35f8beb
Content hash
b35f8beb
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00384
Status: valid/unmigrated Version: rel:R25-11#fc9e7b47 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_00384@rel:R25-11#fc9e7b47
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#a696d1622026-09-30
  • R19-11rel:R19-11#d4b8e2312026-10-14
  • R20-11rel:R20-11#099ea9052026-10-14
  • R21-11rel:R21-11#b33d8fec2026-10-14
  • R22-11rel:R22-11#ecd3c6072026-10-14
  • R23-11rel:R23-11#707e152a2026-10-14
  • R24-11rel:R24-11#4437e4182026-10-14
  • R25-11rel:R25-11#fc9e7b472026-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

एन्यूमरेशन TransmissionResult [SWS_DM_00307] Upstream: RS_Diag_04172, RS_Diag_04147, RS_Diag_04168

enum class TransmissionResult :              std::uint8_t {...};

Values denoting the Transmission Confirmation Result provided by the Transport Protocol Handler Instance to the DM Server.

Header-Datei#include "apext/diag/uds_transport/protocol_mgr.h"
Forwarding-Header#include "apext/diag/diag_fwd.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolMgr
SymbolTransmissionResult
Basistypstd::uint8_t

Werte

EnumeratorBeschreibung
kTransmitOk=0 Transmission Ok.
kTransmitFailed=1 Transmission Failed.

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

Record
AUTOSAR/AP/record/SWS_DM_00307
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00307@rel:R25-11#603d5987
Content hash
603d5987
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00307
Status: valid/unmigrated Version: rel:R25-11#a96e1afe 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_00307@rel:R25-11#a96e1afe
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#bb7c59332026-09-30
  • R19-11rel:R19-11#3c5bd3e02026-10-14
  • R20-11rel:R20-11#1a40da8a2026-10-14
  • R21-11rel:R21-11#1a40da8a2026-10-14
  • R22-11rel:R22-11#dd385c782026-10-14
  • R23-11rel:R23-11#d63bd68e2026-10-14
  • R24-11rel:R24-11#0774c6bd2026-10-14
  • R25-11rel:R25-11#a96e1afe2026-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

टाइप उपनामों का प्रलेखन

टाइप उपनाम GlobalChannelIdentifier [SWS_DM_09021] Upstream: RS_Diag_04147, RS_Diag_04168

using GlobalChannelIdentifier = std::tuple<UdsTransportProtocolHandler ID, ChannelID>;

Type of tuple to pack UdsTransportProtocolHandlerID and ChannelID together, to form a global unique (among all used UdsTransportProtocolHandlers within DM) identifier of a Uds TransportProtocol channel.

Header-Datei#include "apext/diag/uds_transport/protocol_mgr.h"
Scopeclass apext::diag::uds_transport::UdsTransportProtocolMgr
SymbolGlobalChannelIdentifier

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

Record
AUTOSAR/AP/record/SWS_DM_09021
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_09021@rel:R25-11#3f1fc5ea
Content hash
3f1fc5ea
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_09021
Status: valid/unmigrated Version: rel:R25-11#2dd38493 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_09021@rel:R25-11#2dd38493
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#4200e9d42026-09-30
  • R19-11rel:R19-11#7c3bef962026-10-14
  • R20-11rel:R20-11#8ffd78d52026-10-14
  • R21-11rel:R21-11#8ffd78d52026-10-14
  • R22-11rel:R22-11#b1e43aa62026-10-14
  • R23-11rel:R23-11#01454d8f2026-10-14
  • R24-11rel:R24-11#1fe1cbb92026-10-14
  • R25-11rel:R25-11#2dd384932026-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