Предоставляет метаданные и сведения о целостности для диагностических массовых данных при коммуникации по SOVD.
СОЗДАНО ИИне провереноМодель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: 7c22095f2f08ПроисхождениеОткрытые вопросы (3)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал
Предоставляет метаданные и сведения о целостности для диагностических массовых данных при коммуникации по SOVD.
Структура ara::diag::SovdBulkData::BulkDataMetaDataDescriptor служит объектом передачи данных для описания массовых данных для диагностической коммуникации по SOVD в AUTOSAR Adaptive ([SWS_DM_01830]). Она объединяет идентификационную информацию, сведения о локализации и типе, такие как id, file_name и mimetype, а также контрольные суммы и опциональные указания размера (SWS Diagnostics §8.53.2 «Struct: BulkDataMetaDataDescriptor»). Экземпляр заполняется метаданными предоставляющим диагностическим приложением и передается в подсистему SOVD. Как пассивная структура C++ без собственной синхронизации, одновременные доступы на запись должны быть внешне защищены вызывающим приложением.
Контекст
Структура данных ara::diag::SovdBulkData::BulkDataMetaDataDescriptor является частью модуля diag в AUTOSAR Adaptive Platform и предоставляется через заголовочный файл #include "ara/diag/sovd_bulk_data.h" ([SWS_DM_01830]). Она определяет дескриптор метаданных для диагностических массовых данных (Bulk Data), которые передаются в рамках SOVD (Service-Oriented Vehicle Diagnostics) (SWS Diagnostics §8.53.2 «Struct: BulkDataMetaDataDescriptor»). В таких диагностических сценариях, как считывание объемных файлов журналов, буферов трассировки или пакетов обновлений, диагностическим клиентам помимо бинарного потока данных требуется структурированная сопроводительная информация. Структура объединяет эти метаданные для однозначной идентификации, интерпретации и проверки целостности.
Во взаимодействии между диагностическим приложением, средой выполнения ara::diag и внешними диагностическими тестерами структура действует как пассивный объект передачи данных (DTO). Поле id определяет уникальный идентификатор массовых данных ([SWS_DM_01831]). Для именования предусмотрены file_name для имени файла ([SWS_DM_01836]), name для логического обозначения ([SWS_DM_01833]), а также translation_id для целей локализации ([SWS_DM_01834]). Тип мультимедиа объявляется через mimetype ([SWS_DM_01832]). За обеспечение целостности отвечают hash ([SWS_DM_01839]) и hash_algorithm ([SWS_DM_01840]), тогда как creation_date ([SWS_DM_01837]) и last_modified ([SWS_DM_01838]) определяют временную привязку (SWS Diagnostics §8.53.2.1 «Public Member Variables»).
Жизненный цикл
Будучи структурой C++, BulkDataMetaDataDescriptor содержит исключительно открытые атрибуты без собственных конструкторов с бизнес-логикой ([SWS_DM_01830]). Интерпретация: структура, вероятно, преимущественно инстанцируется и заполняется предоставляющим данные диагностическим приложением как объект-значение на стеке или в куче, чтобы затем быть переданной в подсистему SOVD. Вопрос Q-4a0434afda63d047 (открытый) Время жизни подчиняется стандартным правилам для объектов C++; содержащиеся члены типа ara::core::String, а также опциональное поле размера ara::core::Optional<std::uint64_t> детерминированно освобождаются при уничтожении экземпляра ([SWS_DM_01835]).
Сама структура не имеет внутренних состояний или переходов между состояниями. В многопоточных средах параллельное чтение экземпляра некритично; однако операции записи в открытые переменные должны синхронизироваться вызывающим приложением извне, поскольку встроенные механизмы защиты отсутствуют.
Путь использования
Типичный порядок вызовов для использования дескриптора метаданных в рамках массовой передачи данных SOVD делится на следующие шаги:
Регистрация контрольных значений и размера в байтах: после генерации полезных данных контрольная сумма вносится в hash ([SWS_DM_01839]), а алгоритм — в hash_algorithm ([SWS_DM_01840]). Если количество байтов известно заранее, заполняется size ([SWS_DM_01835]); если опциональное поле остается пустым, это, предположительно, сигнализирует о размере файла, который на момент предоставления еще является переменным. Вопрос Q-03f717e53701c9c0 (открытый)
Передача в подсистему SOVD: инициализированный дескриптор передается в ara::diag, чтобы внешние клиенты SOVD могли запросить метаданные.
Поскольку BulkDataMetaDataDescriptor является пассивной структурой данных, коды ошибок не возвращаются напрямую самой структурой. Ошибки проявляются при последующей обработке с помощью ara::diag или на стороне клиента:
Несоответствие контрольной суммы: если указанный в hash ([SWS_DM_01839]) хеш не совпадает с фактическим содержимым или если hash_algorithm ([SWS_DM_01840]) неизвестен, верификация на стороне клиента завершается неудачей.
Отклонение размера в байтах: если опциональное поле size ([SWS_DM_01835]) задано и отличается от фактически полученного количества байтов, получатель сообщает об ошибке передачи.
Недопустимый тип мультимедиа: ошибочный или пустой mimetype ([SWS_DM_01832]) приводит к ошибкам интерпретации в клиентском инструменте.
Отсутствие обязательной идентификации: если id ([SWS_DM_01831]) или file_name ([SWS_DM_01836]) не заполнены, набор данных не может быть однозначно адресован в рамках фреймворка SOVD.
Данное руководство основано на спецификации AUTOSAR Adaptive Platform Release R25-11 и было сгенерировано автоматически.
gemini-3.8-flash-low· 2026-10-13 · Немецкий оригинал