Definieert het SecOC-FVM-foutdomein en koppelt specifieke foutcodes aan berichtteksten en uitzonderingen.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 815063923fbeHerkomstOpen vragen (2)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
Definieert het SecOC-FVM-foutdomein en koppelt specifieke foutcodes aan berichtteksten en uitzonderingen.
De klasse apext::com::secoc::ComSecOcFvmErrorDomain kapselt het foutdomein in voor de Freshness Value Manager in de SecOC-communicatiemodule van Adaptive AUTOSAR [SWS_CM_12514]. Deze koppelt beschrijvende teksten aan foutcodes uit ComSecOcFvmErrc en maakt de omzetting daarvan in ComSecOcFvmException-uitzonderingen mogelijk. Toegang vindt doorgaans procesbreed plaats via de hulpfunctie GetComSecOcFvmErrorDomain()[SWS_CM_12521]. Als compiler-uitzonderingen zijn uitgeschakeld, wordt de methode voor het genereren van uitzonderingen automatisch uitgesloten van overbelastingsresolutie.
Context
De klasse apext::com::secoc::ComSecOcFvmErrorDomain definieert het foutdomein voor de Freshness Value Manager (FVM) in het kader van veilige boordcommunicatie (SecOC) voor het Adaptive AUTOSAR communicatiemanagement [SWS_CM_12514] (AUTOSAR_AP_SWS_CommunicationManagement §C.2.3 “Class: ComSecOcFvmErrorDomain”). Als finale subklasse van ara::core::ErrorDomain integreert deze domeinspecifieke FVM-fouttoestanden in het platformbrede foutafhandelingsmodel van Adaptive AUTOSAR.
De creatie van een instantie van ComSecOcFvmErrorDomain vindt plaats via de parameterloze standaardconstructor [SWS_CM_12517]. Door de declaratie als constexpr en noexcept is gegarandeerd dat de instantiëring reeds tijdens compileertijd zonder allocatierisico kan plaatsvinden en volledig uitzonderingsveilig is.
Tijdens runtime fungeert het foutdomein typisch als een langlevend, onveranderlijk singleton in het proces (interpretatie). Vraag Q-fc901552d01e33de (open) Applicatie- en middleware-componenten instantiëren het domein doorgaans niet lokaal, maar maken gebruik van de via GetComSecOcFvmErrorDomain() beschikbaar gestelde constante referentie [SWS_CM_12521]. Aangezien de lidfuncties Name()[SWS_CM_12518] en Message()[SWS_CM_12519] toestandloos en gedefinieerd als const noexcept zijn, is gelijktijdige leestoegang vanuit meerdere threads veilig zonder aanvullende synchronisatiemechanismen.
Gebruikspad
Als er een fout optreedt in de Freshness Value Manager, interageren aanroepers via een vaste sequentie met het foutdomein:
Referentie ophalen: de component verkrijgt de globale domeinreferentie via GetComSecOcFvmErrorDomain()[SWS_CM_12521].
Domeinidentificatie: via Name() kan voor logging- of diagnosedoeleinden de vast toegewezen identifier van het foutdomein worden opgevraagd [SWS_CM_12518].
Foutmelding oplossen: aan de hand van een doorgegeven foutcode (CodeType) levert Message() een pointer naar de statische, voor mensen leesbare beschrijving van de fout [SWS_CM_12519].
Uitzondering werpen: als het foutpad op basis van uitzonderingen moet worden afgehandeld, transformeert ThrowAsException() een ara::core::ErrorCode-object naar de bijbehorende uitzondering [SWS_CM_12520].
Sequentiediagram: typische opvraging van foutteksten of het genereren van een uitzondering via de ComSecOcFvmErrorDomain. Bronnen: [SWS_CM_12519], [SWS_CM_12520], [SWS_CM_12521]
Foutscenario's
De functies Name()[SWS_CM_12518] en Message()[SWS_CM_12519] bezitten de uitzonderingsveiligheid noexcept en werpen onder geen enkele omstandigheid. Bij onbekende numerieke foutcodes retourneert Message() vermoedelijk een generieke standaardtekenreeks (interpretatie). Vraag Q-4f9834f33957160b (open)
Daarentegen is de methode ThrowAsException() per definitie niet uitzonderingsveilig (not exception safe), aangezien haar expliciete taak erin bestaat om een ComSecOcFvmException-object op basis van de doorgegeven ara::core::ErrorCode te construeren en te werpen [SWS_CM_12520]. Een belangrijke preconditie betreft de toolchain-configuratie: als C++-uitzonderingen in de compiler zijn uitgeschakeld, neemt ThrowAsException() niet deel aan de overbelastingsresolutie [SWS_CM_12520]. Aanroepers in uitzonderingsvrije runtime-omgevingen moeten de foutafhandeling derhalve realiseren via ara::core::Result of directe evaluaties van foutcodes.
Deze handleiding werd gegenereerd door een AI-systeem op basis van de specificatie AUTOSAR Adaptive R25-11.
Creates a new instance of apext::com::secoc::ComSecOcFvmException from errorCode and throws it. As per [SWS_CORE_10304], this function does not participate in overload resolution when C++ exceptions are disabled in the compiler toolchain.
Returns a string constant associated with the apext::com::secoc:: ComSecOcFvmErrorDomain
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: c28253f0fde1HerkomstOpen vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
De lidfunctie Name() van de foutdomeinklasse apext::com::secoc::ComSecOcFvmErrorDomain retourneert een tekenreeksconstante die de identifier van dit foutdomein vertegenwoordigt [SWS_CM_12518]. De declaratie wordt bereitgesteld via het headerbestand #include "apext/com/secoc/fvm_error_domain.h"[SWS_CM_12518]. De functie werkt zuiver synchroon, accepteert geen parameters en levert een pointer naar een onveranderlijke tekenreeks van het type const char * op [SWS_CM_12518].
Wat betreft de foutafhandeling is de interface gespecificeerd als exception safe en voorzien van de C++-identifier noexcept[SWS_CM_12518]. Een aanroep kan zodoende niet falen en triggert geen C++-exceptions. Specifieke foutcodes, feedbackbeschrijvingen of meldingen aan DET of DEM bestaan voor deze opvraagfunctie niet.
Aangezien het om een lezende const-methode gaat die een constante pointer naar een statische string retourneert, is de uitvoering vermoedelijk re-entrant en thread-safe. Vraag Q-75fa65f59869d0ab (open) Er bestaan geen beperkende volgordevoorwaarden voor de aanroepcontext.
De methode voegt zich in de uitbreidingen van Communication Management voor SecOC en Freshness Value Management AUTOSAR_AP_SWS_CommunicationManagement §1 “Release Changes” p. 3. Zij volgt hetzelfde architecturale patroon als de gelijkname functies van andere foutdomeinen van de module, met name in ara::com::ComErrorDomain[SWS_CM_11331] en in ara::com::e2e::ComE2EErrorDomain[SWS_CM_12507].
Deze gebruiksinstructie is geautomatiseerd opgesteld op basis van de specificatie AUTOSAR R25-11.
Creates a new instance of apext::com::secoc::ComSecOcFvmException from errorCode and throws it. As per [SWS_CORE_10304], this function does not participate in overload resolution when C++ exceptions are disabled in the compiler toolchain.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: ce36f40333e6Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
Gebruik
De lidfunctie ThrowAsException van het foutdomein apext::com::secoc::ComSecOcFvmErrorDomain (SWS Communication Management §C.2.3.2.2.3 “ThrowAsException”, [SWS_CM_12520]) dient voor het converteren van een foutcode naar een C++-exceptie. Zij accepteert als invoerparameter een referentie naar een foutcode errorCode van het type const ara::core::ErrorCode& en heeft geen retourwaarde. De functie creëert een nieuwe instantie van apext::com::secoc::ComSecOcFvmException op basis van de meegegeven foutcode en werpt deze synchroon op ([SWS_CM_12520]).
Foutafhandeling en exception-veiligheid
De methode is gedeclareerd met noexcept(false) en volgens de specificatie geclassificeerd als niet uitzonderingsveilig (not exception safe) ([SWS_CM_12520]). Het reguliere uitvoeringspatroon voorziet erin dat de functie niet normaal terugkeert, maar de gegenereerde uitzondering apext::com::secoc::ComSecOcFvmException in geval van een fout onmiddellijk aan de aanroeper meldt.
Beperkingen
Voor de functie geldt een wezenlijke restrictie met betrekking tot de compilerconfiguratie: indien C++-exceptions in de compiler-toolchain zijn uitgeschakeld, neemt ThrowAsException conform [SWS_CORE_10304] niet deel aan de overload-resolutie ([SWS_CM_12520]).
gemini-3.8-flash-low· 2026-10-13 · Duits origineel