Предоставляет метаинформацию, такую как MIME-тип и размер данных, для передачи конфигураций SOVD.
Контекст
Структура ara::diag::SovdConfiguration::SovdConfigurationMetaInfo служит стандартизированным контейнером метаданных для передачи данных конфигурации SOVD (Service-Oriented Vehicle Diagnostics) в AUTOSAR Adaptive Platform [SWS_DM_01861]. Она объявлена в заголовке ara/diag/sovd_configuration.h и организационно напрямую сопоставлена интерфейсному классу ara::diag::SovdConfiguration AUTOSAR_AP_SWS_Diagnostics §8.54.2 «Struct: SovdConfigurationMetaInfo». Ее основная задача заключается в предоставлении метаинформации, необходимой для диагностической передачи конфигурации, такой как тип содержимого и объем данных [SWS_DM_01862], [SWS_DM_01863].
К основным партнерам по взаимодействию относятся, с одной стороны, применяющее диагностическое приложение, которое создает, модифицирует или обрабатывает данные конфигурации, а с другой стороны — диагностическая система управления AUTOSAR Adaptive. Структура выступает в качестве объекта передачи данных (Data Transfer Object, DTO), опосредующего взаимодействие между прикладной логикой и стандартизированными службами передачи диагностической платформы. С помощью предоставляемых полей отправитель и получатель могут согласовывать, в каком формате представлены данные конфигурации и сколько байтов ожидается в канале передачи.
Жизненный цикл
Будучи чисто пассивным типом данных C++ (struct), SovdConfigurationMetaInfo не подчиняется сложным фазам жизненного цикла, управляемым платформой [SWS_DM_01861]. Создание обычно выполняется непосредственно приложением Adaptive Application на стеке или в куче, непосредственно перед тем, как инициируется передача конфигурации или анализируется полученный набор метаданных. Структура следует обычной семантике значений C++; владеющий компонент несет ответственность за инстанцирование и время жизни.
Что касается внутреннего состояния, структура не имеет конечного автомата и дискретных режимов работы. После инициализации открытых переменных данные остаются в памяти неизменными вплоть до уничтожения экземпляра, если только они явно не перезаписываются владеющим приложением. Освобождение экземпляра происходит автоматически в соответствии с паттерном RAII при выходе из области видимости, при этом динамически выделенная память содержащейся строки освобождается [SWS_DM_01863].
Что касается параллелизма, SovdConfigurationMetaInfo не обеспечивает встроенной потокобезопасности. Несколько потоков могут одновременно считывать экземпляр, например для инспекции параметров конфигурации. Однако одновременный доступ для записи к одному и тому же экземпляру требует внешних мер синхронизации, поскольку конкурирующие модификации переменных-членов приводят к несогласованности данных.
Путь использования
Типовой сценарий использования заключается в подготовке и предоставлении метаданных перед фактической передачей конфигурации. Приложение сначала инстанцирует структуру и присваивает полю mimetype строку символов, описывающую медиатип файла конфигурации [SWS_DM_01863], AUTOSAR_AP_SWS_Diagnostics §8.54.2.1.1 «mimetype». Это позволяет получателю сопоставить его с парсером или схемой, например для конфигураций на основе JSON или XML.
На следующем шаге проверяется, можно ли заранее определить точный размер файла полезных данных. Если это возможно, атрибуту size присваивается соответствующее целочисленное байтовое значение [SWS_DM_01862], AUTOSAR_AP_SWS_Diagnostics §8.54.2.1.2 «size». Если размер до начала передачи неизвестен, переменная остается неустановленной. Затем подготовленный объект передается в качестве аргумента функции передачи класса ara::diag::SovdConfiguration.
Диаграмма последовательности: типовой ход инициализации и передачи SovdConfigurationMetaInfo в рамках передачи конфигурации. Источники: [SWS_DM_01861], [SWS_DM_01862], [SWS_DM_01863], AUTOSAR_AP_SWS_Diagnostics §8.54.2 «Struct: SovdConfigurationMetaInfo».
Сценарии ошибок
Поскольку SovdConfigurationMetaInfo спроектирована как чистая структура данных без функций-членов, она не определяет собственных возвращаемых значений, кодов ошибок или исключений [SWS_DM_01861]. Возможные ошибочные состояния возникают главным образом из-за неполного или несогласованного заполнения данных, которое распознается обрабатывающими службами платформы в ara::diag::SovdConfiguration.
Интерпретация: первый сценарий ошибки касается недопустимых MIME-типов. Вопрос (открытый) Если в mimetype задана пустая строка или неподдерживаемый идентификатор формата, вызываемая служба передачи, вероятно, отклонит обработку и вернет соответствующий код ошибки приложению. Второй сценарий ошибки заключается в расхождении размера данных: если фактически переданный объем данных отличается от байтового значения, объявленного в size, диагностическая инфраструктура, предположительно, прервет передачу из-за несогласованности. Кроме того, неустановленное поле size может привести к ошибкам передачи, если выбранный транспортный канал обязательно требует заранее известной общей длины.
Настоящее руководство основано на спецификации AUTOSAR Adaptive Platform версии R25-11.
gemini-3.8-flash-low· 2026-10-13 · Немецкий оригинал