Definieert typeveilige checkpoint-enumeraties voor functiebewaking via Platform Health Management.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: b0c83abdbab1HerkomstOpen vragen (2)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
Definieert typeveilige checkpoint-enumeraties voor functiebewaking via Platform Health Management.
Deze namespace stelt in Platform Health Management sterk getypeerde enumeraties beschikbaar voor checkpoints van bewaakte entiteiten [SWS_PHM_00424]. Elke bewaakte entiteit krijgt een eigen scoped enumeration met het basistype std::uint32_t, waarvan de gedeclareerde enumerators als controlepunten aan de interface ara::phm::PhmSupervisedEntityInterface worden gemeld [SWS_PHM_00424], [SWS_PHM_00425]. Door de statische beschikbaarstelling in de typeveilige namespace wordt het verwisselen van controlepunten van verschillende entiteiten tijdens compile-tijd betrouwbaar voorkomen.
Context
De C++-namespace namespace ara::phm::supervised_entities::{ <hierarchical-namespace-list-lower-skeleton>} dient binnen Platform Health Management (PHM) van het AUTOSAR Adaptive Platform als toegewijd bereik voor typeveilige controlepunten (checkpoints) van bewaakte functionele eenheden (Supervised Entities). Conform [SWS_PHM_00424] bevat deze namespace scoped enumerations van het format enum class {<phmssi-sn>} : std::uint32_t, die de discrete checkpoints voor de interface ara::phm::PhmSupervisedEntityInterface definiëren. Voor elk geconfigureerd element van de controlepuntenlijst bestaat een unieke C++-enumerator-declaratie [SWS_PHM_00425]. De wisselwerking bindt drie functionele kerncomponenten samen: de bewaakte applicatiesoftware (Supervised Entity), de door de namespace gemodelleerde getypeerde checkpoints en de platforminterface ara::phm::PhmSupervisedEntityInterface, waarlangs bewakingsgebeurtenissen worden doorgegeven aan de PHM-dienst.
Contextdiagram: Wisselwerking tussen bewaakte applicatiesoftware, getypeerde checkpoint-enumeratie en platforminterface. Bronnen: [SWS_PHM_00424], [SWS_PHM_00425]
Levenscyclus
De typen en constanten binnen de namespace bezitten een statisch compile-time-karakter. Zij zijn niet onderhevig aan een dynamische runtime-levenscyclus door allocatie of vrijgave op de heap, maar worden beschikbaar gesteld als getypeerde C++11 scoped enumerations met het basistype std::uint32_t[SWS_PHM_00424]. Interpretatie: De definities worden typisch tijdens het bouwproces geautomatiseerd gegenereerd uit de AUTOSAR-dienstbeschrijving, aangezien paden en identifiers afhankelijk zijn van de modelparameters van de interface. Vraag (open) Voor de inclusie stelt de standaard per bewaakte eenheid een eigen headerbestand onder #include "ara/phm/supervised_entities/{ <si-namespace-derived-directory-path-lower>}/{<phmssi-sn>}.h" ter beschikking, terwijl algemene typedeclaraties via de forwarding-header #include "ara/phm/phm_fwd.h" voorwaarts kunnen worden gedeclareerd [SWS_PHM_00424]. De enumerator-constanten staan de applicatie zodoende gedurende de gehele proceslevensduur onveranderlijk ter beschikking [SWS_PHM_00425].
Gebruikspad
Het typische gebruikspad voor softwarecomponenten die als Supervised Entity optreden, valt uiteen in drie op elkaar voortbouwende stappen:
Header-invoeging: De applicatie voegt de gegenereerde header van de bewaakte eenheid in via het bestandspad ara/phm/supervised_entities/{ <si-namespace-derived-directory-path-lower>}/{<phmssi-sn>}.h of de centrale doorverwijzing ara/phm/phm_fwd.h[SWS_PHM_00424].
Interface-initialisatie: De applicatie instantieert respectievelijk bindt de interface ara::phm::PhmSupervisedEntityInterface waarvoor de checkpoints van de enumeratie zijn gedeclareerd [SWS_PHM_00424].
Checkpoint-signalering: Bij het doorlopen van relevante controlepunten in het algoritme selecteert de applicatie de bijbehorende enumerator {<symbol-phm-checkpoint>} uit de namespace [SWS_PHM_00425] en meldt deze aan de instantie van ara::phm::PhmSupervisedEntityInterface[SWS_PHM_00424].
Door de binding aan het basistype std::uint32_t[SWS_PHM_00424] en de expliciete waardetoekenning van elk controlepunt [SWS_PHM_00425] wordt een typeveilige en eenduidige identificatie van de betreffende programmastappen tijdens runtime gegarandeerd.
Foutscenario's
Foutief gebruik van deze namespace vloeit vooral voort uit modelgerelateerde en typegerelateerde configuratiefouten. Aangezien het een enum class betreft [SWS_PHM_00424], voorkomt het C++-typesysteem impliciete typeconversies; het gebruik van foutieve datatypen of enumerators van externe Supervised Entities wordt zodoende reeds tijdens compilatietijd afgevangen. Tot runtimefouten kan het leiden wanneer de configuratie in de modelbeschrijving niet exact overeenstemt met de enumerator-lijst: Conform [SWS_PHM_00425] moet voor elk checkpoint een overeenkomstige enumerator zijn gedeclareerd. Interpretatie: Mocht een applicatie door een ontoelaatbare typeconversie of verouderde headerbestanden een niet in het model geconfigureerde std::uint32_t-waarde doorgeven aan ara::phm::PhmSupervisedEntityInterface, dan zal de PHM-dienst dit checkpoint vermoedelijk niet kunnen toewijzen en dit beschouwen als een schending van de bewaking. Vraag Q-b8fb7472f6ea8d10 (open)
Deze handleiding is uitsluitend gebaseerd op de specificaties van de AUTOSAR Adaptive Platform R25-11.
gemini-3.8-flash-low· 2026-10-13 · Duits origineel