Предоставляет общие статические метаданные, сведения о версиях и идентификаторы для сервисного интерфейса.
СОЗДАНО ИИне провереноМодель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: f6b3f809e490ПроисхождениеОткрытые вопросы (2)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал
Предоставляет общие статические метаданные, сведения о версиях и идентификаторы для сервисного интерфейса.
Класс объединяет в качестве общего пространства имен статические метаданные и идентификаторы для интерфейса в Communication Management платформы AUTOSAR Adaptive SWS CommunicationManagement §8.2.2.1 «Public Member Variables». Через serviceIdentifier и serviceVersion он предоставляет базовую информацию для однозначной идентификации и версионирования сервиса [SWS_CM_11506]. Кроме того, serviceContractVersionMajor и serviceContractVersionMinor определяют точную версию сервисного контракта для обеспечения совместимости интерфейсов. Интерпретация: поскольку все объявленные элементы являются статическими, класс, предположительно, не требует инстанцирования во время выполнения и подключается неизменяемым в масштабах всего процесса. Вопрос Q-bdf8084e3c4a2dec (открытый)
Контекст
В AUTOSAR Adaptive Platform класс C++ <SI-Namespace>::common::<SI> в модуле com (Communication Management) выполняет центральную роль общего контейнера метаданных и пространств имен для определенного Service Interface SWS CommunicationManagement §8.2.2.1 «Public Member Variables». Класс объединяет статические свойства и идентификаторы интерфейса, которые одинаково действуют как для потребителей сервиса, так и для поставщиков сервиса и предоставляются через заголовочный файл #include "<SiNamespaceDerivedDirectoryPath>/<SiShortname>_common.h"[SWS_CM_11506].
К основным партнерам по взаимодействию относится функциональный Communication Management ara::com, базовые типы данных которого подключаются. Класс предоставляет идентификатор сервиса serviceIdentifier типа const ara::com::ServiceIdentifierType[SWS_CM_11506] (SWS CommunicationManagement §8.2.2.1.3 «serviceIdentifier»), а также версию сервиса serviceVersion типа const ara::com::ServiceVersionType[SWS_CM_11507] (SWS CommunicationManagement §8.2.2.1.4 «serviceVersion»). Интерпретация: компоненты приложений и платформы используют это общее определение класса в качестве обязательной ссылки для построения экземпляров сервисов с использованием единых идентификаторов и интерфейсных контрактов. Вопрос (открытый)
С точки зрения жизненного цикла <SI-Namespace>::common::<SI> принципиально отличается от классов динамических экземпляров: он не требует явного инстанцирования и не имеет динамически управляемого состояния. Все переменные интерфейса, определенные в спецификации, объявлены как статические элементы класса SWS CommunicationManagement §8.2.2.1 «Public Member Variables».
Что касается параллелизма, переменные serviceIdentifier и serviceVersion, квалифицированные с помощью const, обеспечивают полную потокобезопасность при одновременном доступе на чтение. Интерпретация: поскольку переменные версий serviceContractVersionMajor и serviceContractVersionMinor представляют контрактные состояния спецификации, во время выполнения они, предположительно, остаются неизменными, благодаря чему возможен одновременный доступ на чтение из нескольких потоков выполнения без затрат на синхронизацию. Вопрос Q-2335ea4535e239d6 (открытый)
Путь использования
Типичный путь использования включает статический доступ к метаданным и информации о версиях для обеспечения совместимости интерфейсов:
Подключение заголовка: приложение или сгенерированный коммуникационный уровень подключает файл <SiNamespaceDerivedDirectoryPath>/<SiShortname>_common.h для получения доступа к пространству имен <SI-Namespace>::common::<SI>[SWS_CM_11506].
Идентификация сервиса: компоненты обращаются напрямую через <SI-Namespace>::common::<SI>::serviceIdentifier к уникальному идентификатору сервиса, например для инициализации экземпляров или для регистрации в коммуникационной инфраструктуре [SWS_CM_11506] (SWS CommunicationManagement §8.2.2.1.3 «serviceIdentifier»).
Сверка версий: для проверки совместимости интерфейсов между коммуникационными партнерами считываются serviceVersion[SWS_CM_11507], а также версии контракта serviceContractVersionMajor[SWS_CM_11508] и serviceContractVersionMinor[SWS_CM_11509].
Предусловия для доступа на чтение отсутствуют, так как все константы доступны уже при запуске программы. Состояния ошибок или исключения для чистого доступа на чтение к этим статическим переменным не специфицированы.
Это руководство основано исключительно на спецификации AUTOSAR для Adaptive Communication Management (R25-11).
gemini-3.8-flash-low· 2026-10-13 · Немецкий оригинал