एक कॉलबैक इंटरफ़ेस के माध्यम से डायग्नोस्टिक मैनेजमेंट को वाहन का वर्तमान DoIP पावर मोड प्रदान करता है।
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: afa4b2f1975cउद्गमखुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
एक कॉलबैक इंटरफ़ेस के माध्यम से डायग्नोस्टिक मैनेजमेंट को वाहन का वर्तमान DoIP पावर मोड प्रदान करता है।
इंटरफ़ेस वर्ग ara::diag::DoIPPowerMode ऐप्लिकेशन्स को कॉलबैक फ़ंक्शन GetDoIPPowerMode()[SWS_DM_00734] के माध्यम से डायग्नोस्टिक मैनेजमेंट को वर्तमान DoIP पावर मोड प्रदान करने में सक्षम बनाता है। इंस्टैंसिएशन के बाद, हैंडलर को Offer() के माध्यम से सक्रिय किया जाना चाहिए और विनाश से पहले StopOffer() के माध्यम से फिर से अपंजीकृत किया जाना चाहिए [SWS_DM_00735], [SWS_DM_00736]। एकल प्रति के रूप में, यह वर्ग न तो कॉपी करने योग्य है और न ही स्थानांतरित करने योग्य [SWS_DM_01645]।
संदर्भ
अमूर्त वर्ग ara::diag::DoIPPowerMode डायग्नोस्टिक मैनेजमेंट (DM) को वर्तमान DoIP पावर मोड प्रदान करने के लिए इंटरफ़ेस को परिभाषित करता है। इंटरनेट प्रोटोकॉल पर डायग्नोस्टिक्स (DoIP) का उपयोग करने वाले वाहन आर्किटेक्चर में, संचार प्रोटोकॉल को वाहन नेटवर्क की परिचालन स्थिति या बिजली आपूर्ति के बारे में सूचित किया जाना चाहिए। ऐप्लिकेशन सॉफ़्टवेयर ara::diag::DoIPPowerMode से एक ठोस हैंडलर वर्ग प्राप्त करता है और पावर मोड की क्वेरी को लागू करता है [SWS_DM_00734]। इंटरैक्शन भागीदार सेवा प्रदान करने वाला डायग्नोस्टिक ऐप्लिकेशन है, जो इंटरफ़ेस प्रदान करता है, और DM रनटाइम सिस्टम, जो इस हैंडलर को आने वाले अनुरोधों को सौंपता है [SWS_DM_00735]।
जीवनचक्र
ara::diag::DoIPPowerMode के इंस्टैंस ऐप्लिकेशन के आंतरिक रूप से बनाए जाते हैं और एक पोर्ट प्रोटोटाइप के माध्यम से पहचाने जाते हैं जिसे ara::core::InstanceSpecifier द्वारा संदर्भित किया जाता है [SWS_DM_00732]। कंस्ट्रक्टर को कॉल करते समय, तर्क ConcurrencyType यह निर्दिष्ट करता है कि क्या कॉलबैक मेथड GetDoIPPowerMode() को थ्रेड-सुरक्षित (kConcurrent) या गैर-थ्रेड-सुरक्षित (kNotConcurrent) निष्पादित किया जाना चाहिए [SWS_DM_00732]। कंस्ट्रक्टर स्वयं थ्रेड-सुरक्षित रूप से निष्पादित होता है [SWS_DM_00732]।
विनिर्देश के अनुसार, यह एक गैर-कॉपी करने योग्य और गैर-स्थानांतरण योग्य इंस्टैंस है: कॉपी कंस्ट्रक्टर [SWS_DM_01645] और मूव कंस्ट्रक्टर [SWS_DM_01646] दोनों के साथ-साथ संबंधित असाइनमेंट ऑपरेटर [SWS_DM_01643], [SWS_DM_01644] स्पष्ट रूप से हटा दिए गए हैं (=delete)।
इंस्टैंसिएशन के बाद, हैंडलर को Offer() के माध्यम से सक्रिय किया जाना चाहिए ताकि DM अनुरोधों को अग्रेषित कर सके [SWS_DM_00735]। अनुरोधों के अग्रेषण को समाप्त करने के लिए, StopOffer() को कॉल किया जाता है [SWS_DM_00736]। वर्चुअल डिस्ट्रक्टर ~DoIPPowerMode()[SWS_DM_00733] के साथ-साथ Offer() और StopOffer() को गैर-थ्रेड-सुरक्षित के रूप में निर्दिष्ट किया गया है। संभवतः, DM के साथ लंबित इंटरैक्शन को ठीक से डिस्कनेक्ट करने के लिए डिस्ट्रक्टर को कॉल करने से पहले हमेशा StopOffer() निष्पादित किया जाना चाहिए। प्रश्न Q-85ede935aa303c45 (खुला)
उपयोग पथ
ara::diag::DoIPPowerMode का विशिष्ट उपयोग इनिशियलाइज़ेशन, सर्विस पंजीकरण, चक्रीय या घटना-आधारित मोड क्वेरी और अपंजीकरण के एक निश्चित क्रम का पालन करता है:
ऐप्लिकेशन उपयुक्त InstanceSpecifier और वांछित ConcurrencyType[SWS_DM_00732] के साथ अपने व्युत्पन्न वर्ग को इंस्टैंसिएट करता है।
ऐप्लिकेशन Offer() का उपयोग करके हैंडलर को डायग्नोस्टिक मैनेजमेंट के साथ सक्रिय रूप से पंजीकृत करता है [SWS_DM_00735]।
जैसे ही DoIP प्रोटोकॉल को स्थिति की आवश्यकता होती है, DM शुद्ध वर्चुअल फ़ंक्शन GetDoIPPowerMode() को कॉल करता है [SWS_DM_00734]। कार्यान्वयन एक ara::core::Future<PowerModeType> लौटाता है, जिसे अतुल्यकालिक रूप से हल किया जाता है [SWS_DM_00734]।
ऑपरेशन समाप्त होने पर, ऐप्लिकेशन आगे कोई अनुरोध स्वीकार न करने के लिए StopOffer() को कॉल करता है [SWS_DM_00736]।
इंस्टैंस को डिस्ट्रक्टर [SWS_DM_00733] के माध्यम से रिलीज़ किया जाता है।
कंस्ट्रक्टर को कॉल करते समय, मॉडल और मैपिंग उल्लंघन हो सकते हैं, जो प्रलेखित हैं [SWS_DM_00732]:
InstanceSpecifierMappingIntegrityViolation: निष्पादन योग्य के संदर्भ में पहचानकर्ता को हल नहीं किया जा सकता है या यह किसी PortPrototype तत्व को संदर्भित नहीं करता है [SWS_DM_00732]।
PortInterfaceMappingViolation: संदर्भित PortPrototype को DiagnosticDoIPPowerModeInterface द्वारा टाइप नहीं किया गया है [SWS_DM_00732]।
ProcessMappingViolation: एक इंस्टैंस संदर्भ मौजूद है, लेकिन रनटाइम परिवेश के लिए कोई उपयुक्त मॉडल्ड प्रक्रिया नहीं है [SWS_DM_00732]।
InstanceSpecifierAlreadyInUseViolation: InstanceSpecifier का उपयोग उसी प्रक्रिया के भीतर किसी अन्य इंस्टैंस के लिए पहले ही किया जा चुका है [SWS_DM_00732]।
यदि Offer() को कॉल किया जाता है जबकि सेवा पहले से ही सक्रिय रूप से पेश की जा रही है, तो मेथड ara::core::Result के माध्यम से त्रुटि कोड DiagOfferErrc::kAlreadyOffered लौटाती है [SWS_DM_00735]। इसके विपरीत, मेथड GetDoIPPowerMode() किसी भी मानकीकृत त्रुटि कोड को परिभाषित नहीं करती है [SWS_DM_00734]।
यह मार्गदर्शिका Adaptive Platform (रिलीज़ R25-11) के लिए AUTOSAR विनिर्देश पर आधारित है। सभी विवरण और त्रुटि कोड संदर्भित SWS आवश्यकताओं पर आधारित हैं।
InstanceSpeci- InstanceSpecifier either cannot be resolved in the model in the fierMappingIn- context of your executable, or it refers to a model element other tegrityViolation than a PortPrototype. PortInterfaceMap- A PortPrototype that is referenced by a pingViolation DiagnosticDoIpPowerModePortMapping needs to be typed by a DiagnosticDoIPPowerModeInterface. ProcessMappingVio- Matching InstanceRef exists, but no matching (modelled) Process lation found that matches the (runtime) process. InstanceSpecifier- Violation message that is sent in case a constructor in the ara AlreadyInUseViola- framework was called with an InstanceSpecifier already in use in tion this process.
Parameter (in)
Parameter
Beschreibung
specifier
InstanceSpecifier to a PortPrototype of a DiagnosticDoIPPowerModeInterface
concurrencyType
Specifies if the interface is implemented as thread safe ( kConcurrent) or non-thread safe (kNotConcurrent)..
Request a governed re-review of this record. The record is not changed immediately.
This Offer will enable the DM to forward request messages to this handler.
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 5f8fb75036b6उद्गम
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
वर्ग ara::diag::DoIPPowerMode की समकालिक विधि Offer का उपयोग किसी Adaptive Application द्वारा Diagnostic Management (DM) के साथ DoIP पावर मोड के लिए सेवा को पंजीकृत और जारी करने के लिए किया जाता है [SWS_DM_00735]। यह कॉल DM को आने वाले अनुरोध संदेशों को इस हैंडलर को अग्रेषित करने में सक्षम बनाती है [SWS_DM_00735]। फ़ंक्शन किसी इनपुट पैरामीटर की अपेक्षा नहीं करता है, कोई अपवाद नहीं फेंकता है (noexcept) और रिटर्न मान के रूप में एक ara::core::Result<void> देता है [SWS_DM_00735]।
जब तक प्रदाता एप्लिकेशन द्वारा Offer को कॉल नहीं किया गया है, तब तक DM DoIP पावर मोड जानकारी के लिए क्लाइंट अनुरोधों का उत्तर ISO 13400-2 के अनुसार स्थिति मान 0 (“Not ready”) के साथ देता है [SWS_DM_01525]। यदि हैंडलर पंजीकृत है और DM को DoIP संदेशों का उत्तर देने के लिए वर्तमान पावर मोड की आवश्यकता है, तो वह ara::diag::DoIPPowerMode::GetDoIPPowerMode के माध्यम से इसे क्वेरी करता है [SWS_DM_00814]।
त्रुटि के मामले में, Result ऑब्जेक्ट में संबंधित त्रुटि कोड होता है। यदि विधि को संबंधित इंस्टेंस पर पहले ही सफलतापूर्वक कॉल किया जा चुका है, तो पुन: कॉल विफल हो जाती है और रोलबैक सिमेंटिक्स के साथ DiagOfferErrc::kAlreadyOffered लौटाती है [SWS_DM_00735]।
समवर्तीता के संबंध में, फ़ंक्शन को थ्रेड-सुरक्षित नहीं (not thread-safe) निर्दिष्ट किया गया है [SWS_DM_00735]। इसलिए समान इंस्टेंस पर समानांतर कॉल को कॉलर द्वारा सिंक्रनाइज़ किया जाना चाहिए। फ़ंक्शन पूर्ण अपवाद सुरक्षा (exception safe) प्रदान करता है [SWS_DM_00735]।
यह उपयोग नोट एक AI द्वारा बनाया गया था और AUTOSAR रिलीज़ R25-11 के विनिर्देशों पर आधारित है।
This StopOffer will disable the forwarding of request messages from DM.
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 2a0861404a22उद्गमखुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
वर्ग ara::diag::DoIPPowerMode का मेथड StopOffer हैंडलर को Diagnostic Management (DM) द्वारा आने वाले डायग्नोस्टिक्स अनुरोध संदेशों के अग्रेषण को निष्क्रिय करता है [SWS_DM_00736]। फ़ंक्शन हेडर फ़ाइल ara/diag/doip_power_mode.h के माध्यम से प्रदान किया जाता है, इसका कोई रिटर्न मान नहीं होता है और यह कोई पैरामीटर स्वीकार नहीं करता है [SWS_DM_00736]।
त्रुटि व्यवहार और निष्पादन परिवेश के लिए निम्नलिखित विनिर्देश विवरण लागू होते हैं:
अपवाद सुरक्षा: फ़ंक्शन को noexcept के रूप में घोषित किया गया है और अपवाद-सुरक्षित (exception safe) के रूप में परिभाषित किया गया है [SWS_DM_00736]। कोई अपवाद नहीं उठाया जाता है और कोई त्रुटि कोड वापस नहीं किया जाता है।
थ्रेड-सुरक्षा: ऑपरेशन को नॉन-थ्रेड-सेफ (not thread-safe) निर्दिष्ट किया गया है [SWS_DM_00736]। व्याख्या: यदि मेथड को मल्टीथ्रेडिंग परिदृश्यों में या इंस्टेंस के अन्य ऑपरेशनों के समानांतर कॉल किया जाता है, तो संभवतः एप्लिकेशन द्वारा बाहरी सिंक्रोनाइज़ेशन की आवश्यकता होगी। प्रश्न Q-1593f08472d584d1 (खुला)
Offer और StopOffer के साथ प्रावधान पैटर्न (provision pattern) Diagnostic Management में एकसमान रूप से डिज़ाइन किया गया है AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”। StopOffer के माध्यम से DM अनुरोधों के अग्रेषण (forwarding) को रोकना इसी प्रकार अन्य डायग्नोस्टिक घटकों में भी उपयोग में आता है, जैसे कि ara::diag::DoIPGroupIdentification[SWS_DM_00726], ara::diag::DoIPActivationLine[SWS_DM_00837], ara::diag::GenericUDSService[SWS_DM_00620], ara::diag::DownloadService[SWS_DM_00793] और ara::diag::Authentication[SWS_DM_01131] में।
यह उपयोग निर्देश AUTOSAR विनिर्देश R25-11 के आधार पर स्वचालित रूप से जनरेट किया गया था।
gemini-3.8-flash-low· 2026-10-13 · जर्मन मूल