Biedt alleen-lezen, thread-veilige leestoegang tot record-elementen van diagnostische SOVD-gegevens.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 5db4cee55bd3HerkomstOpen vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
Biedt alleen-lezen, thread-veilige leestoegang tot record-elementen van diagnostische SOVD-gegevens.
De klasse biedt een onveranderlijke weergave op gestructureerde SOVD-record-inhoudselementen voor efficiënte en alleen-lezen evaluatie in diagnose-applicaties ([SWS_DM_02295]). Gebruikers kunnen de foutstatus controleren via resultaatobjecten, record-elementen gericht per sleutel adresseren of de gehele inhoud sequentieel doorlopen met behulp van constante iterators ([SWS_DM_02300]). Alle interfaces zijn volledig thread-veilig en gedeclareerd als uitzonderingsveilig, maar vereisen wel dat het gereferentieerde inhoudselement overeenkomt met het verwachte record-type.
Context
De klasse ara::diag::DiagnosticSovdRecordContentElementDataConstView definieert een onveranderlijke weergave (Const View) op diagnostische SOVD-inhoudselementen van het record-gegevenstype ([SWS_DM_02295], AUTOSAR_AP_SWS_Diagnostics §8.60.9 “Class: DiagnosticSovdRecordContentElementDataConstView”). De interface wordt beschikbaar gesteld via de header #include "ara/diag/diagnostic_sovd_content_element_data.h" ([SWS_DM_02298]). Deze stelt diagnose-applicaties in staat om hiërarchisch gestructureerde gegevensvelden van een SOVD-inhoudselement gericht en gestructureerd uit te lezen, zonder kopieën van de payload te hoeven maken of modificerende operaties te hoeven uitvoeren.
Tot de primaire interactiepartners behoren de aanroepende diagnosecomponent, het onderliggende object van het type DiagnosticSovdContentElementData en de via dit object geadresseerde individuele elementen, die als constante referentiewrapper std::reference_wrapper<DiagnosticSovdContentElementData const> of via constante iterators beschikbaar worden gesteld ([SWS_DM_02300], [SWS_DM_02301]).
Levenscyclus
Als weergavetype bezit ara::diag::DiagnosticSovdRecordContentElementDataConstView vermoedelijk geen eigen eigendom (ownership) van de onderliggende payload; de geldigheid van de weergave is vermoedelijk gebonden aan de levensduur van het gereferentieerde DiagnosticSovdContentElementData-object. Vraag Q-4aca4f6f723cd3f5 (open) De vernietiging van de view-instantie geeft enkel de weergavedescriptor vrij, maar laat de onderliggende gegevensstructuur ongemoeid.
Wat betreft gelijktijdigheid zijn alle elementfuncties van de klasse expliciet gespecificeerd als thread-veilig en uitzonderingsveilig (noexcept) ([SWS_DM_02296], [SWS_DM_02298]). Meerdere threads hebben zodoende parallel en zonder synchronisatie leestoegang tot de interface, mits de gereferentieerde gegevensstructuur tijdens de toegang niet gelijktijdig wordt gewijzigd.
Gebruikspad
Een typisch verloop voor de evaluatie van een record-element is onderverdeeld in foutcontrole, dimensiecontrole en elementtoegang:
Fouttoestand controleren: Vóór de verwerking wordt via HasError() gevalideerd of de inhoud foutloos aanwezig is ([SWS_DM_02296]).
Gerichte elementtoegang: Vóór de toegang tot een benoemd veld kan met HasContentElement() de aanwezigheid van een sleutel worden gecontroleerd ([SWS_DM_02305]). De willekeurige toegang vindt vervolgens plaats via operator[] onder doorgifte van een ara::core::StringView, die een referentie naar het subelement retourneert ([SWS_DM_02300]). Als alternatief levert Find() een iterator naar het gevonden element op ([SWS_DM_02306]).
De klasse gebruikt voor foutafhandeling het retourtype ara::core::Result in plaats van C++-excepties:
Interne fouttoestand: Vertoont het onderliggende SOVD-inhoudselement een fout, dan retourneert HasError() een ara::core::Result<void> die de foutcode ara::diag::DiagSovdErrc bevat ([SWS_DM_02296]).
Ontbrekende sleutel of typeconflict: Bij toegang via operator[] of bij controle met HasContentElement() levert de retourwaarde een fout-Result op als het DiagnosticSovdContentElementData niet van het type RecordContentElementData of ContentData is of als de opgegeven sleutel niet bestaat ([SWS_DM_02300], [SWS_DM_02305]).
Returns the begin operator of a RecordContentElementData. This DiagnosticSovdContentElementData shall be of type RecordContentElementData or ContentData
auto Begin () noexcept -> DiagnosticSovdRecordContentElementDataConst Iterator;
Returns the begin operator of a RecordContentElementData. This DiagnosticSovdContentElementData shall be of type RecordContentElementData or ContentData
auto CBegin () noexcept -> DiagnosticSovdRecordContentElementDataConst Iterator;
Returns if the RecordContentElementData contains an element with the specified key. This DiagnosticSovdContentElementData shall be of type RecordContentElementData or ContentData
Returns the count of elements in the RecordContentElementData. This DiagnosticSovdContentElementData shall be of type RecordContentElementData or ContentData
auto Begin () noexcept -> DiagnosticSovdRecordContentElementDataConst Iterator;
Returns the begin operator of a RecordContentElementData. This DiagnosticSovdContentElementData shall be of type RecordContentElementData or ContentData
auto CBegin () noexcept -> DiagnosticSovdRecordContentElementDataConst Iterator;
Returns the begin operator of a RecordContentElementData. This DiagnosticSovdContentElementData shall be of type RecordContentElementData or ContentData
Returns if the RecordContentElementData contains an element with the specified key. This DiagnosticSovdContentElementData shall be of type RecordContentElementData or ContentData
boolean indicating if the elements is found or an error if Diagnostic SovdContentElementData is not of type RecordContentElement Data or ContentData OR the key is not found
Request a governed re-review of this record. The record is not changed immediately.
Returns the count of elements in the RecordContentElementData. This DiagnosticSovdContentElementData shall be of type RecordContentElementData or ContentData
reference to the content element or an error if DiagnosticSovdContentElementData is not of type RecordContentElementData or ContentData OR the key is not found
Request a governed re-review of this record. The record is not changed immediately.
gemini-3.8-flash-low· 2026-10-13 · Duits origineel