Инкапсулирует элементы содержимого и результирующие параметры для стандартизированных диагностических служб SOVD и выполнений операций.
СОЗДАНО ИИне провереноМодель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: 5ebd4d309016ПроисхождениеОткрытые вопросы (2)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал
Инкапсулирует элементы содержимого и результирующие параметры для стандартизированных диагностических служб SOVD и выполнений операций.
Структура ara::diag::DiagnosticSovdContentData служит стандартизированным контейнером данных для инкапсуляции диагностического содержимого служб SOVD в AUTOSAR Adaptive ([SWS_DM_02385]). Она содержит полезные данные в открытом векторе элементов содержимого ([SWS_DM_02386]), из которых Diagnostic Management при ответах операций и статуса формирует SOVD-атрибут parameters. Являясь чистым объектом передачи значений, структура не предоставляет внутренней синхронизации потоков, в связи с чем параллельные модификации должны защищаться внутри приложения.
Контекст
Структура данных ara::diag::DiagnosticSovdContentData является частью модуля диагностики (diag) AUTOSAR Adaptive Platform и объявлена в заголовке ara/diag/diagnostic_sovd_content_data.h (AUTOSAR_AP_SWS_Diagnostics §8.59 «Header: ara/diag/diagnostic_sovd_content_data.h», [SWS_DM_02385]). Она функционирует как стандартизированный носитель данных для инкапсуляции диагностического содержимого при сервис-ориентированной диагностике транспортных средств согласно ASAM SOVD.
Внутри платформы структура выступает посредником между сервером диагностики (Diagnostic Management, DM) и поставщиками служб Adaptive Application ([SWS_DM_01396], [SWS_DM_02174]). Если внешним клиентом SOVD инициируется операция или запрос статуса, DM делегирует вызов реализующему программному компоненту. Сформированные выходные данные сохраняются приложением в экземпляре DiagnosticSovdContentData ([SWS_DM_02386]). Затем DM переносит это содержимое в тело ответа SOVD, а именно в стандартизированный атрибут parameters ([SWS_DM_02176], [SWS_DM_02181]).
Определение в виде C++-struct (AUTOSAR_AP_SWS_Diagnostics §8.59.1.1 «Public Member Variables», [SWS_DM_02385]) закрепляет за DiagnosticSovdContentData роль контейнера данных. Структура содержит открытую переменную-член elements типа ara::core::Vector<DiagnosticSovdContentElementData> ([SWS_DM_02386]), в которой динамически управляются отдельные элементы содержимого.
Создание экземпляра обычно происходит локально внутри методов поставщика службы, как только компонуются диагностические данные для ответа. В асинхронных интерфейсах, таких как Read (AUTOSAR_AP_SWS_Diagnostics §8.x «Read»), объект инкапсулируется в ara::core::Future<DiagnosticSovdContentData>. Интерпретация: при этом структура, по-видимому, переходит во владение вызывающей стороны путем передачи по значению или перемещающей семантики, так что время ее жизни привязано к обрабатывающему объекту Future. Вопрос Q-564c59896de41f85 (открытый)
Что касается параллелизма, структура не содержит внутренних примитивов синхронизации. Интерпретация: поскольку это чистый объект передачи значений (Value Object), внутренняя защита потоков, вероятно, отсутствует; таким образом, параллельный доступ к одному и тому же экземпляру должен синхронизироваться вызывающей логикой приложения. Вопрос (открытый) Уничтожение экземпляра происходит автоматически при выходе из области видимости управляющего контекста.
Путь использования
Основной сценарий использования DiagnosticSovdContentData заключается в предоставлении полезных данных при синхронных выполнениях операций, а также при запросах статуса в рамках SOVD:
Внешний SOVD-клиент отправляет запрос на запуск операции в соответствии с ASAM SOVD на транспортное средство ([SWS_DM_01396]).
После валидации граничных условий Diagnostic Management делегирует выполнение соответствующей операции через ara::diag::GenericDiagnosticSovdOperation::StartExecution ([SWS_DM_02174]).
Приложение службы выполняет диагностическую операцию, создает экземпляр DiagnosticSovdContentData и заполняет член elements сгенерированными данными элементов ([SWS_DM_02386]).
Объект передается в Diagnostic Management в рамках возвращаемого значения для синхронных выполнений ([SWS_DM_02176]).
Diagnostic Management считывает значения из DiagnosticSovdContentData, переносит их в атрибут parameters тела ответа SOVD и отправляет ответ клиенту ([SWS_DM_02176]).
Аналогичный путь действует для запроса статуса через SovdOperationExecution::GetStatus ([SWS_DM_02180]), при котором атрибут parameters также выводится из переданных DiagnosticSovdContentData ([SWS_DM_02181]). Точно так же поставщики содержимого используют ту же структуру в качестве типа возвращаемого значения через Read (AUTOSAR_AP_SWS_Diagnostics §8.x «Read»).
gemini-3.8-flash-low· 2026-10-13 · Немецкий оригинал