Defines type-safe checkpoint enumerations for functional supervision via Platform Health Management.
AI-GENERATEDunreviewedModel: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: b0c83abdbab1ProvenanceOpen questions (2)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original
Defines type-safe checkpoint enumerations for functional supervision via Platform Health Management.
In Platform Health Management, this namespace provides strongly typed enumerations for checkpoints of supervised entities [SWS_PHM_00424]. Each supervised entity receives its own scoped enumeration with the underlying type std::uint32_t, whose declared enumerators are reported as checkpoints to the interface ara::phm::PhmSupervisedEntityInterface[SWS_PHM_00424], [SWS_PHM_00425]. Through the static provision in the type-safe namespace, confusion of checkpoints of different entities is reliably prevented at compile time.
Context
Within the Platform Health Management (PHM) of the AUTOSAR Adaptive Platform, the C++ namespace namespace ara::phm::supervised_entities::{ <hierarchical-namespace-list-lower-skeleton>} serves as a dedicated area for type-safe control points (checkpoints) of supervised functional units (Supervised Entities). According to [SWS_PHM_00424], this namespace contains scoped enumerations of the format enum class {<phmssi-sn>} : std::uint32_t, which define the discrete checkpoints for the interface ara::phm::PhmSupervisedEntityInterface. For each configured element of the checkpoint list, a unique C++ enumerator declaration exists [SWS_PHM_00425]. The interaction binds three functional core components together: the supervised application software (Supervised Entity), the typed checkpoints modeled by the namespace, and the platform interface ara::phm::PhmSupervisedEntityInterface via which supervision events are passed on to the PHM service.
Context diagram: Interaction between supervised application software, typed checkpoint enumeration, and platform interface. Sources: [SWS_PHM_00424], [SWS_PHM_00425]
Lifecycle
The types and constants within the namespace have a static compile-time character. They are not subject to a dynamic runtime lifecycle via allocation or deallocation on the heap, but are provided as typed C++11 scoped enumerations with the underlying type std::uint32_t[SWS_PHM_00424]. Interpretation: The definitions are typically generated automatically from the AUTOSAR service description during the build process, as paths and identifiers depend on the model parameters of the interface. Question (open) For inclusion, the standard provides a separate header file under #include "ara/phm/supervised_entities/{ <si-namespace-derived-directory-path-lower>}/{<phmssi-sn>}.h" per supervised entity, while general type declarations can be forward-declared via the forwarding header #include "ara/phm/phm_fwd.h"[SWS_PHM_00424]. The enumerator constants are thus immutably available to the application throughout the entire process lifetime [SWS_PHM_00425].
Usage Path
The typical usage path for software components acting as a Supervised Entity is divided into three sequential steps:
Header inclusion: The application includes the generated header of the supervised entity via the file path ara/phm/supervised_entities/{ <si-namespace-derived-directory-path-lower>}/{<phmssi-sn>}.h or the central forwarding header ara/phm/phm_fwd.h[SWS_PHM_00424].
Interface initialization: The application instantiates or binds the interface ara::phm::PhmSupervisedEntityInterface for which the checkpoints of the enumeration were declared [SWS_PHM_00424].
Checkpoint signaling: When passing relevant checkpoints in the algorithm, the application selects the associated enumerator {<symbol-phm-checkpoint>} from the namespace [SWS_PHM_00425] and reports it to the instance of ara::phm::PhmSupervisedEntityInterface[SWS_PHM_00424].
Through the binding to the underlying type std::uint32_t[SWS_PHM_00424] and the explicit value assignment of each checkpoint [SWS_PHM_00425], a type-safe and unambiguous identification of the respective program steps is guaranteed at runtime.
Error Scenarios
Erroneous usages of this namespace primarily result from model-related and type-related misconfigurations. Since it is a enum class[SWS_PHM_00424], the C++ type system prevents implicit type conversions; the use of incorrect data types or enumerators of foreign Supervised Entities is thus caught as early as compile time. Runtime errors can occur if the configuration in the model description does not match the enumerator list exactly: according to [SWS_PHM_00425], a corresponding enumerator must be declared for each checkpoint. Interpretation: If an application should pass a std::uint32_t value not configured in the model to ara::phm::PhmSupervisedEntityInterface via an impermissible cast or outdated header files, the PHM service is likely unable to assign this checkpoint and would treat this as a supervision violation. Question Q-b8fb7472f6ea8d10 (open)
This guide is based exclusively on the specifications of the AUTOSAR Adaptive Platform R25-11.
gemini-3.8-flash-low· 2026-10-13 · German original