Служит структурой вывода для полезных данных положительного диагностического ответа при универсальных идентификаторах данных.
СОЗДАНО ИИне провереноМодель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: 00159dc7defbПроисхождениеОткрытые вопросы (2)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал
Служит структурой вывода для полезных данных положительного диагностического ответа при универсальных идентификаторах данных.
Структура данных ara::diag::GenericDataIdentifier::OperationOutput инкапсулирует полезные данные для сообщений положительного ответа в рамках универсальных диагностических операций DID ([SWS_DM_00641]). При входящем диагностическом запросе приложение инстанцирует структуру и заполняет элемент responseData определенными выходными данными перед ее передачей в Diagnostic Management ([SWS_DM_00631]). При этом действует существенное граничное условие: responseData должно содержать исключительно чистые полезные данные и ни в коем случае не сам Data Identifier. После переноса в ответное сообщение UDS жизненный цикл кратковременного объекта-значения завершается.
Контекст
Структура данных ara::diag::GenericDataIdentifier::OperationOutput является частью модуля diag в AUTOSAR Adaptive Platform и предоставляется через заголовочный файл ara/diag/generic_data_identifier.h ([SWS_DM_00641], [SWS_DM_00631]). В архитектуре диагностики структура действует как специализированный контейнер данных для результирующих данных сообщения положительного диагностического ответа касательно универсального идентификатора данных (Data Identifier, DID) (AUTOSAR_AP_SWS_Diagnostics §8.19.2 «Struct: OperationOutput»).
Во взаимодействии участвующих архитектурных компонентов OperationOutput образует связующее звено между специфичной для приложения сервисной функцией диагностики и центральным Diagnostic Management. В то время как приложение отвечает за считывание и подготовку полезных данных, диагностическая система времени выполнения берет на себя вышестоящую обработку протокола по отношению к внешнему диагностическому тестеру. Для передачи данных ответа структура объявляет открытую переменную-член responseData типа ara::core::Vector<std::uint8_t> ([SWS_DM_00631], AUTOSAR_AP_SWS_Diagnostics §8.19.2.1.1 «responseData»). Этот байтовый вектор переносит полезную нагрузку сообщения положительного ответа, при этом сам идентификатор данных не должен содержаться в векторе ([SWS_DM_00631]).
Жизненный цикл
Являясь легковесной структурой передачи данных без собственных методов, ara::diag::GenericDataIdentifier::OperationOutput подчиняется простому переходному жизненному циклу значения ([SWS_DM_00641]). Инстанцирование осуществляется по мере необходимости внутри прикладной подпрограммы обработки, как только соответствующая операция чтения или опроса для универсального DID была успешно обработана. При этом содержащийся вектор responseData заполняется запрошенными полезными диагностическими данными ([SWS_DM_00631]).
Отношения владения строго последовательны: создающее приложение сначала удерживает экземпляр локально и после завершения передает его диагностическому фреймворку. Срок службы экземпляра заканчивается, как только Diagnostic Management перенесет полезные данные в исходящее сообщение диагностического ответа. По-видимому, возврат в систему времени выполнения происходит с экономией ресурсов по семантике перемещения (move) или упакованным в асинхронный контейнер, такой как ara::core::Future или ara::core::Result. Вопрос Q-6e8dadb21e01d4fb (открытый) Внутренней синхронизации для параллельного доступа структура не предоставляет; однако, поскольку она заполняется и передается транзиентно внутри выполняющего операцию рабочего потока, интерпретация: межпоточная защита при штатном ходе работы не требуется.
Путь использования
Типичный порядок вызовов при обработке универсального запроса диагностических данных делится на следующие шаги:
Внешний диагностический тестер инициирует запрос (например, службу UDS для чтения по идентификатору данных), который принимается Diagnostic Management автомобиля.
Система диагностики делегирует запрос на чтение соответствующему экземпляру ara::diag::GenericDataIdentifier приложения.
Приложение определяет требуемые данные датчиков или внутренние параметры и инстанцирует ara::diag::GenericDataIdentifier::OperationOutput ([SWS_DM_00641]).
Заполненный экземпляр возвращается в Diagnostic Management, которое помещает DID в начало, компонует полную телеграмму положительного ответа и передает ее диагностическому тестеру.
gemini-3.8-flash-low· 2026-10-13 · Немецкий оригинал