пространство имён ara::phm::supervised_entities::{ <hierarchical-namespace-list-lower-skeleton>}
Руководство пользователяСОЗДАНО ИИ
Определяет типобезопасные перечисления контрольных точек для мониторинга функционирования через Platform Health Management.
СОЗДАНО ИИне провереноМодель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: b0c83abdbab1ПроисхождениеОткрытые вопросы (2)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал
Определяет типобезопасные перечисления контрольных точек для мониторинга функционирования через Platform Health Management.
Этот namespace предоставляет в Platform Health Management строго типизированные перечисления для контрольных точек контролируемых сущностей [SWS_PHM_00424]. Каждая контролируемая сущность получает собственное перечисление с областью видимости (scoped enumeration) с базовым типом std::uint32_t, объявленные перечислители которого передаются в качестве контрольных точек в интерфейс ara::phm::PhmSupervisedEntityInterface[SWS_PHM_00424], [SWS_PHM_00425]. Благодаря статическому предоставлению в типобезопасном пространстве имен надежно предотвращается путаница между контрольными точками различных сущностей на этапе компиляции.
Контекст
Пространство имен C++ namespace ara::phm::supervised_entities::{ <hierarchical-namespace-list-lower-skeleton>} служит в рамках Platform Health Management (PHM) платформы AUTOSAR Adaptive Platform выделенной областью для типобезопасных контрольных точек (Checkpoints) контролируемых функциональных блоков (Supervised Entities). Согласно [SWS_PHM_00424], это пространство имен содержит scoped enumerations формата enum class {<phmssi-sn>} : std::uint32_t, которые определяют дискретные контрольные точки для интерфейса ara::phm::PhmSupervisedEntityInterface. Для каждого сконфигурированного элемента списка контрольных точек существует однозначное объявление C++-перечислителя [SWS_PHM_00425]. Взаимодействие связывает воедино три основных функциональных компонента: контролируемое прикладное программное обеспечение (Supervised Entity), смоделированные пространством имен типизированные контрольные точки и интерфейс платформы ara::phm::PhmSupervisedEntityInterface, через который события мониторинга передаются службе PHM.
Контекстная диаграмма: взаимодействие между контролируемым прикладным программным обеспечением, типизированным перечислением контрольных точек и интерфейсом платформы. Источники: [SWS_PHM_00424], [SWS_PHM_00425]
Жизненный цикл
Типы и константы внутри пространства имен имеют статический характер времени компиляции. Они не подчиняются динамическому жизненному циклу во время выполнения через выделение или освобождение памяти в куче, а предоставляются как типизированные scoped enumerations стандарта C++11 с базовым типом std::uint32_t[SWS_PHM_00424]. Интерпретация: определения обычно генерируются автоматически в процессе сборки из описания сервиса AUTOSAR, так как пути и идентификаторы зависят от параметров модели интерфейса. Вопрос (открытый) Для включения стандарт предоставляет для каждой контролируемой единицы отдельный заголовочный файл в #include "ara/phm/supervised_entities/{ <si-namespace-derived-directory-path-lower>}/{<phmssi-sn>}.h", тогда как общие объявления типов могут быть предварительно объявлены через перенаправляющий заголовочный файл #include "ara/phm/phm_fwd.h"[SWS_PHM_00424]. Таким образом, константы перечислителей неизменно доступны приложению на протяжении всего времени жизни процесса [SWS_PHM_00425].
Путь использования
Типичный путь использования для программных компонентов, действующих в качестве Supervised Entity, делится на три последовательных шага:
Подключение заголовочного файла: приложение подключает сгенерированный заголовочный файл контролируемой единицы через путь к файлу ara/phm/supervised_entities/{ <si-namespace-derived-directory-path-lower>}/{<phmssi-sn>}.h или центральное перенаправление ara/phm/phm_fwd.h[SWS_PHM_00424].
Инициализация интерфейса: приложение инстанцирует или привязывает интерфейс ara::phm::PhmSupervisedEntityInterface, для которого были объявлены контрольные точки перечисления [SWS_PHM_00424].
Сигнализация контрольной точки: при прохождении релевантных точек контроля в алгоритме приложение выбирает соответствующий перечислитель {<symbol-phm-checkpoint>} из пространства имен [SWS_PHM_00425] и сообщает его экземпляру ara::phm::PhmSupervisedEntityInterface[SWS_PHM_00424].
Благодаря привязке к базовому типу std::uint32_t[SWS_PHM_00424] и явному присвоению значения каждой контрольной точке [SWS_PHM_00425] гарантируется типобезопасная и безошибочная идентификация соответствующих шагов программы во время выполнения.
Сценарии ошибок
Неправильное использование этого пространства имен возникает прежде всего из-за ошибок конфигурации, связанных с моделью и типами. Поскольку речь идет о enum class[SWS_PHM_00424], система типов C++ предотвращает неявные преобразования типов; таким образом, использование некорректных типов данных или перечислителей чужих Supervised Entities пресекается еще во время компиляции. К ошибкам времени выполнения может привести ситуация, когда конфигурация в описании модели не совпадает в точности со списком перечислителей: согласно [SWS_PHM_00425], для каждой контрольной точки должен быть объявлен соответствующий перечислитель. Интерпретация: если приложение из-за недопустимого приведения типов или устаревших заголовочных файлов передаст не сконфигурированное в модели значение std::uint32_t в ara::phm::PhmSupervisedEntityInterface, служба PHM, вероятно, не сможет сопоставить эту контрольную точку и расценит это как нарушение мониторинга. Вопрос Q-b8fb7472f6ea8d10 (открытый)
Настоящее руководство основано исключительно на спецификациях AUTOSAR Adaptive Platform R25-11.
gemini-3.8-flash-low· 2026-10-13 · Немецкий оригинал