DEENESPTFRRUARHIKOZHNL

структура ara::diag::UploadService::OperationOutput

[SWS_DM_00795] Upstream: RS_Diag_04033

struct OperationOutput {...};

Response data of positive respose message.

Header-Datei#include "ara/diag/upload.h"
Forwarding-Header#include "ara/diag/diag_fwd.h"
Scopeclass ara::diag::UploadService

Руководство пользователяСОЗДАНО ИИ

Принимает полезные данные сообщения положительного ответа для диагностических операций выгрузки (Upload).
СОЗДАНО ИИ не проверено Модель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: 6cf26bd1a154 Происхождение Открытые вопросы (2)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал

Принимает полезные данные сообщения положительного ответа для диагностических операций выгрузки (Upload).

Структура ara::diag::UploadService::OperationOutput служит выходным параметром для возврата полезных данных положительного диагностического ответа при сервисах выгрузки [SWS_DM_00796]. Прикладное программное обеспечение инстанцирует объект после успешного выполнения операции Upload и заполняет член responseData отправляемыми байтами данных [SWS_DM_00796]. При этом содержимое responseData не должно содержать Service Identifier (SID) и должно соответствовать специфичным для операции требованиям таких сервисов, как UploadData или RequestUploadExit. Интерпретация: в случае ошибки структура не используется, а сигнализируется отрицательный статус ответа. Вопрос Q-52a8538825bc0a30 (открытый)

Контекст

Структура ara::diag::UploadService::OperationOutput функционирует как контейнер данных для полезных данных успешной диагностической операции в рамках сервиса выгрузки на стороне автомобиля [SWS_DM_00796]. Ее основная задача заключается в инкапсуляции данных для сообщения положительного ответа («positive response message») и их передаче на платформу [SWS_DM_00796].

В общей системе при этом взаимодействуют три компонента: внешний диагностический клиент (тестер), среда выполнения диагностики Adaptive-системы (ara::diag) и специфичная для приложения реализация UploadService [SWS_DM_00796]. Как только тестер запрашивает сервисную операцию UDS, ara::diag делегирует обработку соответствующему поставщику сервиса приложения, который возвращает результат на уровень платформы через OperationOutput [SWS_DM_00796].

OperationOutputContext client Диагностический клиент aradiag ara::diag client->aradiag UDS-запрос aradiag->client Positive Antwort app UploadService Provider aradiag->app Dienstaufruf app->aradiag OperationOutput

Контекстная диаграмма: взаимодействие диагностического клиента, среды выполнения ara::diag и UploadService при предоставлении данных ответа. Источники: [SWS_DM_00796], AUTOSAR_AP_SWS_Diagnostics, с. 74.

Жизненный цикл

Структура OperationOutput спроектирована как чистый объект передачи данных без собственной логики состояний и предоставляется через заголовочный файл #include "ara/diag/upload.h" [SWS_DM_00796]. Ее жизненный цикл делится на следующие фазы:

  • Создание: инстанцирование выполняется со стороны приложения внутри выполняемой диагностической операции, как только требуемые данные выгрузки были успешно скомпонованы. Интерпретация: объект, вероятно, создается локально на стеке сервисного приложения. Вопрос (открытый)
  • Заполнение: логика приложения присваивает открытому члену responseData типа ara::core::Vector<std::uint8_t> предоставляемые полезные данные [SWS_DM_00796].
  • Переход владения: объект передается в ara::diag как результат операции. Интерпретация: эта передача, вероятно, осуществляется по значению или с помощью семантики перемещения, в результате чего ответственность за данные переходит к платформе. Вопрос (открытый)
  • Уничтожение: после сериализации полезных данных в сообщение ответа UDS структура освобождается средой выполнения.

В плане параллелизма OperationOutput не предоставляет внутренней синхронизации. Однако, поскольку экземпляры создаются строго под каждый вызов операции и обрабатываются локально в потоке, разделяемое управление состоянием не требуется.

Путь использования

Штатная процедура предоставления данных ответа через OperationOutput включает фиксированную последовательность шагов взаимодействия:

  1. Внешний тестер отправляет запрос выгрузки (например, UploadData или RequestUploadExit) в электронный блок управления [SWS_DM_00796].
  2. Диспетчер диагностики ara::diag обрабатывает заголовок протокола и вызывает соответствующую операцию экземпляра приложения UploadService [SWS_DM_00796].
  3. Приложение обрабатывает запрос, создает экземпляр OperationOutput и заполняет responseData полезными данными [SWS_DM_00796]. При этом responseData должно содержать исключительно полезные данные без Service Identifier (SID) [SWS_DM_00796]. В зависимости от операции требуемое содержимое, а также начальная позиция данных в сообщении положительного ответа варьируются [SWS_DM_00796].
  4. Структура возвращается в ara::diag.
  5. Уровень платформы генерирует полное сообщение ответа UDS и передает его тестеру [SWS_DM_00796].
Последовательность вызовов для предоставления данных ответа через OperationOutputДиагностический клиентara::diagUploadService ProviderUDS-Upload-Anfrage (z. B. UploadData)Dienstaufruf an UploadServiceИнстанцировать OperationOutput и заполнить responseDataВозврат OperationOutputПоложительный ответ UDS (полезные данные без SID)

Диаграмма последовательности: последовательность вызовов для возврата диагностических данных с помощью OperationOutput. Источники: [SWS_DM_00796], AUTOSAR_AP_SWS_Diagnostics, с. 74.

Сценарии ошибок

Структура OperationOutput специфицирована исключительно для успешных выполнений и сообщений положительного ответа [SWS_DM_00796]. Если операция завершается сбоем (например, из-за недопустимых диапазонов адресов или ошибок последовательности при UploadData), OperationOutput не используется. Интерпретация: ошибочные процессы, вероятно, передаются в ara::diag через отдельные диагностические коды ошибок (NRC), поэтому создание или заполнение выходной структуры не требуется. Вопрос Q-fa3daf3152f7131c (открытый)

В качестве предусловия для возврата действует требование, чтобы responseData содержало в точности те байты, которые требуются соответствующей сервисной операцией, и не содержало предшествующих идентификаторов протокола [SWS_DM_00796]. В качестве постусловия управление диагностикой принимает данные для завершения коммуникации по шине [SWS_DM_00796].

Данное руководство основано на требованиях AUTOSAR Adaptive Platform R25-11.

UML-диаграмма классов

Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.

G nara__diag__UploadService__OperationOutput307 «struct» OperationOutput + responseData

Константы

responseData переменная

Content of positive response message (without SID) Depending on the operation (e.g.: UploadData, RequestUploadExit) the expectation, what responseData shall contain (where it starts in the positive response) might differ. See doc of corresponding operation.

Документация констант / переменных

переменная responseData [SWS_DM_00796] Upstream: RS_Diag_04033

ara::core::Vector<std::uint8_t> responseData;

Content of positive response message (without SID) Depending on the operation (e.g.: UploadData, RequestUploadExit) the expectation, what responseData shall contain (where it starts in the positive response) might differ. See doc of corresponding operation.

Header-Datei#include "ara/diag/upload.h"
Scopestruct ara::diag::UploadService::OperationOutput
SymbolresponseData
Typara::core::Vector< std::uint8_t >

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_00796
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00796@rel:R25-11#5033e45e
Content hash
5033e45e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00796
Status: valid/unmigrated Version: rel:R25-11#891d111d Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_00796@rel:R25-11#891d111d
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#533702792026-09-30
  • R23-11rel:R23-11#c101ec302026-10-14
  • R24-11rel:R24-11#c101ec302026-10-14
  • R25-11rel:R25-11#891d111d2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill