DEENESPTFRRUARHIKOZHNL

क्लास ara::sm::SmException

[SWS_SM_81242] Upstream: RS_AP_00119

class SmException :          public ara::core::Exception {...};

Exception type thrown by State Management.

Header-Datei#include "ara/sm/sm_error_domain.h"
Forwarding-Header#include "ara/sm/sm_fwd.h"
Scopenamespace ara::sm
Basisklasse(n)ara::core::Exception

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

एक C++ अपवाद के रूप में महत्वपूर्ण कार्यात्मक त्रुटियों के अग्रेषण और प्रबंधन के लिए State Management के त्रुटि कोड को समाहित करता है।
एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 72647117def3 उद्गम खुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

एक C++ अपवाद के रूप में महत्वपूर्ण कार्यात्मक त्रुटियों के अग्रेषण और प्रबंधन के लिए State Management के त्रुटि कोड को समाहित करता है।

क्लास ara::sm::SmException अपवाद स्थितियों को अग्रेषित करने का कार्य करती है जो State Management के ऑपरेशनों के दौरान उत्पन्न होती हैं [SWS_SM_81242]। यह ara::core::Exception से व्युत्पन्न है और उत्पन्न त्रुटि के सटीक कारण की पहचान करने के लिए एक विशिष्ट ara::core::ErrorCode को समाहित करती है। इसका निर्माण एक स्पष्ट कंस्ट्रक्टर के माध्यम से होता है जिसे थ्रेड-सुरक्षित और अपवाद-सुरक्षित निर्दिष्ट किया गया है [SWS_SM_81243]। समाहित त्रुटि कोड का विश्लेषण करने और उचित पुनर्प्राप्ति उपायों को शुरू करने के लिए कॉलिंग एप्लिकेशन ऑब्जेक्ट को संरचित तरीके से कैच करते हैं।

संदर्भ

क्लास ara::sm::SmException AUTOSAR Adaptive Platform [SWS_SM_81242] में कार्यात्मक क्लस्टर State Management के लिए केंद्रीय अपवाद के रूप में कार्य करती है। यह हेडर ara/sm/sm_error_domain.h में परिभाषित है और सार्वजनिक रूप से मूलभूत प्लेटफ़ॉर्म अपवाद क्लास ara::core::Exception से व्युत्पन्न है AUTOSAR_AP_SWS_StateManagement §8.1.4 “Class: SmException”। दस्तावेज़ के भीतर, क्लास के विनिर्देश को DRAFT स्थिति के साथ रखा गया है [SWS_SM_81242]।

आर्किटेक्चरल संदर्भ में, यह क्लास तीन केंद्रीय भूमिकाओं को जोड़ती है: विफल स्थिति ऑपरेशनों के दौरान ट्रिगर करने वाले इंस्टेंस के रूप में State Management, हैंडलर के रूप में कॉलिंग Adaptive एप्लिकेशन, तथा ara::core का बुनियादी ढाँचा, जो त्रुटि प्रबंधन के लिए सामान्य इंटरफ़ेस प्रदान करता है। त्रुटि स्थितियों के वाहक के रूप में, यह C++ अपवाद तंत्र के माध्यम से सिंक्रोनस रूप से मॉड्यूल sm से उच्च-स्तरीय नियंत्रण इंस्टेंस तक त्रुटि स्थितियों को अग्रेषित करने का कार्य करती है।

जीवनचक्र

ara::sm::SmException का इंस्टेंसिएशन स्पष्ट रूप से कंस्ट्रक्टर SmException(ara::core::ErrorCode errorCode) [SWS_SM_81243] के माध्यम से होता है। यह कंस्ट्रक्टर noexcept के रूप में घोषित है और इसमें अपवाद सुरक्षा (exception safe) और थ्रेड सुरक्षा (thread-safe) दोनों गुण हैं AUTOSAR_AP_SWS_StateManagement §8.1.4.1.1.1 “SmException”। यह गारंटी देता है कि अपवाद ऑब्जेक्ट का निर्माण स्वयं विफल नहीं होगा या आगे के अपवादों को ट्रिगर नहीं करेगा, भले ही इसे समवर्ती निष्पादन संदर्भों में बनाया गया हो।

निर्माण के बाद, इंस्टेंस को आमतौर पर मान द्वारा (by value) फेंका जाता है और कॉलिंग संदर्भ में स्थिर ऑब्जेक्ट्स के संदर्भ (const ara::sm::SmException& या बहुरूपी रूप से const ara::core::Exception&) के रूप में पकड़ा जाता है। चूँकि विनिर्देश किसी विशिष्ट डिस्ट्रक्टर या मैन्युअल क्लीनअप रूटीन को निर्धारित नहीं करता है, व्याख्या के अनुसार अपवाद ऑब्जेक्ट का विनाश पूरी तरह से मानक C++ सिमेंटिक्स और बेस क्लास ara::core::Exception के तंत्र का पालन करेगा जैसे ही संबंधित हैंडलिंग ब्लॉक से बाहर निकला जाता है। प्रश्न Q-85b1fd2f6082db8e (खुला)

उपयोग पथ

विशिष्ट प्रवाह एक एप्लिकेशन या प्लेटफ़ॉर्म घटक से शुरू होता है जो State Management को स्थिति नियंत्रण अनुरोध भेजता है। यदि अनुरोधित स्थिति परिवर्तन आंतरिक रूप से निष्पादित नहीं किया जा सकता है या कोई गंभीर अपवाद त्रुटि होती है, तो State Management संबंधित ara::core::ErrorCode [SWS_SM_81243] निर्दिष्ट करते हुए ara::sm::SmException के एक इंस्टेंस को इंस्टेंटिएट करता है।

SmException के माध्यम से त्रुटि संकेतनएप्लिकेशनState ManagementSmExceptionस्थिति अनुरोध निष्पादित करेंFehler identifizieren (ErrorCode)SmException(errorCode)Instanz bereitgestelltthrow SmExceptioncatch (const SmException&) और त्रुटि कोड का मूल्यांकन करें

अनुक्रम आरेख: State Management में SmException का उपयोग करके किसी त्रुटि का विशिष्ट संकेतन और हैंडलिंग। स्रोत: [SWS_SM_81242], [SWS_SM_81243]।

कॉलिंग घटक फेंके गए अपवाद को संबंधित catch ब्लॉक में कैच करता है। बेस क्लास ara::core::Exception से इनहेरिट की गई विधियों के माध्यम से, एप्लिकेशन त्रुटि के कारण को अर्थपूर्ण रूप से वर्गीकृत करने और त्रुटि निवारण या सिस्टम स्थिति की पुनर्प्राप्ति के लिए लक्षित उपाय शुरू करने के लिए समाहित ara::core::ErrorCode का निरीक्षण कर सकता है।

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

क्लास ara::sm::SmException स्वयं एक त्रुटि-प्रवण ऑपरेशन तत्व का प्रतिनिधित्व नहीं करती है, बल्कि State Management [SWS_SM_81242] के भीतर अपवाद स्थितियों के लिए प्राथमिक वाहक ऑब्जेक्ट है। निर्माण के लिए आवश्यक पूर्व-शर्त कंस्ट्रक्टर कॉल [SWS_SM_81243] के दौरान एक इनिशियलाइज़्ड ara::core::ErrorCode ऑब्जेक्ट का प्रावधान है।

यदि कॉल स्टैक में फेंके गए ara::sm::SmException को किसी उपयुक्त हैंडलर द्वारा नहीं पकड़ा जाता है, तो मानक C++ नियमों के अनुसार यह std::terminate के कॉल की ओर ले जाता है और इस प्रकार प्रभावित प्रक्रिया की अनियंत्रित समाप्ति होती है। ara::core::Result के पक्ष में अपवादों से बचने का निर्देश देने वाले कार्यान्वयनों में, थ्रो करने से बचा जाता है; हालाँकि, यदि अपवाद पथ उपलब्ध है, तो समावेशन यह सुनिश्चित करता है कि मूल त्रुटि कोड त्रुटि निदान के लिए अपरिवर्तित रूप से ले जाया जाए।

यह क्लास गाइड AUTOSAR Adaptive R25-11 विनिर्देश पर आधारित है। सभी विवरण संदर्भित विनिर्देश बिंदुओं पर आधारित हैं।

UML क्लास आरेख

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

G nara__sm__SmException872 SmException + SmException() nara__core__Exception792 Exception nara__sm__SmException872->nara__core__Exception792 nstd__exception10 std::exception nara__core__Exception792->nstd__exception10

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

SmException फ़ंक्शन

Construct a new StateManagement exception object containing an error code.

explicit SmException (ara::core::ErrorCode errorCode) noexcept;

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

फ़ंक्शन SmException [SWS_SM_81243] Upstream: RS_AP_00119, RS_AP_00159

explicit SmException (ara::core::ErrorCode errorCode) noexcept;

Construct a new StateManagement exception object containing an error code.

Header-Datei#include "ara/sm/sm_error_domain.h"
Scopeclass ara::sm::SmException
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
errorCodeThe error code.

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

Record
AUTOSAR/AP/record/SWS_SM_81243
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_SM_81243@rel:R25-11#23601036
Content hash
23601036
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_StateManagement.pdf#nameddest=SWS_SM_81243
Status: valid/unmigrated Version: rel:R25-11#aa947f45 Versionshistorie & Revisions (1 transition)
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_SM_81243@rel:R25-11#aa947f45
Point-in-Time History:
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