DEENESPTFRRUARHIKOZHNL

구조체 ara::diag::DownloadService::OperationOutput

[SWS_DM_00785] Upstream: RS_Diag_04033

struct OperationOutput {...};

Response data of positive response message.

Header-Datei#include "ara/diag/download.h"
Forwarding-Header#include "ara/diag/diag_fwd.h"
Scopeclass ara::diag::DownloadService

사용자 가이드AI 생성

다운로드 작업 시 서비스 ID를 제외한 긍정 진단 응답의 페이로드를 반환하는 역할을 합니다.
AI 생성 미검증 모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: c06f480862f4 출처 열린 질문 (2)
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문

다운로드 작업 시 서비스 ID를 제외한 긍정 진단 응답의 페이로드를 반환하는 역할을 합니다.

데이터 구조 ara::diag::DownloadService::OperationOutput은 다운로드 서비스의 긍정 진단 응답 페이로드를 위한 전송 컨테이너 역할을 합니다([SWS_DM_00785]). Adaptive 애플리케이션은 결과 바이트로 필드 responseData를 채우고 해당 구조를 진단 관리에 전달합니다([SWS_DM_00786]). 중요한 제약 조건은 responseData에 서비스 ID가 없는 페이로드가 반드시 포함되어야 하며, DownloadData 또는 RequestDownloadExit와 같은 작업에 따라 서로 다른 내용이 예상된다는 점입니다([SWS_DM_00786]).

컨텍스트

구조체 ara::diag::DownloadService::OperationOutput은 AUTOSAR Adaptive Platform 내 진단 모듈의 특수화된 데이터 타입이며 헤더 파일 ara/diag/download.h을 통해 제공됩니다([SWS_DM_00785]). 주요 역할은 다운로드 서비스를 위한 긍정 진단 응답 메시지의 페이로드를 캡슐화하는 것입니다(AUTOSAR_AP_SWS_Diagnostics §8.14.2 “Struct: OperationOutput”). 진단 아키텍처 내에서 이 구조체는 Adaptive 애플리케이션의 구체적인 서비스 구현과 기본 진단 런타임 환경(ara::diag) 간의 데이터 전송 컨테이너 역할을 하며, 진단 런타임 환경은 다시 외부 진단 클라이언트(테스터)와 상호작용합니다(AUTOSAR_AP_SWS_Diagnostics §7 “API Specification”).

유일하게 포함된 멤버는 ara::core::Vector<std::uint8_t> 타입의 공개 필드 responseData입니다([SWS_DM_00786]). 이는 다운로드 작업이 성공적으로 처리되었을 때 진단 테스터로 다시 전송되어야 하는 순수 사용자 데이터 및 페이로드 바이트를 전달합니다.

수명 주기

순수 데이터 구조(struct)로서 OperationOutput은 내부 상태 머신이나 자체 메서드를 갖지 않습니다([SWS_DM_00785]). 그 수명 주기는 짧으며 단일 진단 요청의 동기 또는 비동기 처리와 직접 연결됩니다.

  • 생성: 다운로드 작업이 성공적으로 완료되고 응답 데이터가 준비되는 즉시 애플리케이션에 의해 구조체가 인스턴스화됩니다. 생성은 일반적으로 스택 또는 콜백/퓨처(future) 체인 내에서 이루어질 것으로 추정됩니다. 질문 (열림)
  • 채우기 및 전달: 애플리케이션은 계산된 바이트로 벡터 responseData을 채웁니다([SWS_DM_00786]). 진단 관리로 반환됨에 따라 데이터에 대한 책임이 플랫폼으로 이전됩니다.
  • 소멸: 플랫폼 계층이 데이터를 직렬화하고 UDS 프레임을 전송하면 인스턴스가 해제됩니다.

동시성과 관련하여 OperationOutput은 수동적 값 객체로서 스레드 안전하지 않다는 점에 유의해야 합니다. 애플리케이션의 동시 작업자 스레드에서 작업이 처리되는 경우, 객체가 ara::diag로 전달되기 전에 responseData에 대한 동시 액세스가 발생하지 않도록 해야 합니다.

사용 경로

OperationOutput의 일반적인 사용은 진단 다운로드 요청 처리의 일환으로 발생합니다. 외부 진단 테스터가 차량에 요청을 보내면 플랫폼이 이를 수신하여 Adaptive 애플리케이션의 DownloadService 인터페이스에 있는 적절한 메서드로 전달합니다(AUTOSAR_AP_SWS_Diagnostics §7 “API Specification”). 성공적인 내부 처리 후 애플리케이션은 OperationOutput의 인스턴스를 생성하고 응답 데이터를 전달합니다.

OperationOutput을 통한 응답 데이터 제공 흐름진단 클라이언트ara::diag (DCM)DownloadService (Anwendung)Download-Anfrage (UDS)다운로드 오퍼레이션 호출Verarbeitet DatenblockErzeugt OperationOutputresponseData 채움 (SID 제외)OperationOutput {responseData} 반환SID / 헤더 추가Positive UDS-Antwortnachricht

시퀀스 다이어그램: OperationOutput을 통한 긍정 응답 데이터 제공 시 진단 클라이언트, 플랫폼 런타임 및 애플리케이션 간의 상호작용. 출처: [SWS_DM_00785], [SWS_DM_00786], AUTOSAR_AP_SWS_Diagnostics §8.14.2 “Struct: OperationOutput”.

responseData을 채울 때 페이로드는 서비스 ID(SID) 없이 제공되어야 한다는 점에 유의해야 합니다([SWS_DM_00786]). 플랫폼은 프로토콜별 SID 및 가능한 헤더 정보를 자동으로 추가합니다. 또한 정확한 내용 구조는 호출된 작업에 따라 달라집니다. DownloadData 또는 RequestDownloadExit의 경우 벡터 내 응답 데이터의 시작 및 구조에 대한 시맨틱 기대치가 다릅니다([SWS_DM_00786]).

오류 시나리오

OperationOutput은 긍정 응답 메시지용으로 명시적으로 지정되었으므로(AUTOSAR_AP_SWS_Diagnostics §8.14.2 “Struct: OperationOutput”), 데이터 구조 내에 오류 코드 또는 부정 피드백을 위한 필드가 존재하지 않습니다. 다운로드 작업을 실행하는 동안 오류가 발생하는 경우(예: 유효하지 않은 주소 범위, 잘못된 블록 순서 또는 중단된 전송), OperationOutput는 평가되지 않을 것으로 추정됩니다. 대신 애플리케이션은 플랫폼의 오류 채널을 통해 실패를 알리고, 이에 따라 부정 응답 코드(NRC)가 생성됩니다. 질문 (열림)

서비스 ID가 실수로 responseData에 삽입된 경우 OperationOutput 사용 시 애플리케이션 측 오류가 발생합니다. 이는 규격 [SWS_DM_00786]에 위배되며 잘못된 프레임 포맷팅으로 이어질 가능성이 높습니다. 질문 (열림) 마찬가지로 특정 작업에 따라 잘못된 바이트 순서나 불완전한 데이터 양은 테스터 측의 프로토콜 오류로 이어집니다([SWS_DM_00786]).

이 가이드는 AUTOSAR Adaptive Platform 릴리스 R25-11 사양을 기반으로 하며 자동으로 생성되었습니다.

UML 클래스 다이어그램

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

G nara__diag__DownloadService__OperationOutput45 «struct» OperationOutput + responseData

상수

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

상수 / 변수 문서

변수 responseData [SWS_DM_00786] Upstream: RS_Diag_04033

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

Content of positive response message (without SID) Depending on the operation (e.g.: DownloadData, RequestDownloadExit) 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/download.h"
Scopestruct ara::diag::DownloadService::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_00786
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00786@rel:R25-11#d2749090
Content hash
d2749090
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00786
Status: valid/unmigrated Version: rel:R25-11#9ee381a9 Versionshistorie & Revisions (1 transition, 7 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_00786@rel:R25-11#9ee381a9
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#a830c82b2026-09-30
  • R20-11rel:R20-11#5fbb8d5c2026-10-14
  • R21-11rel:R21-11#bfa9d5ae2026-10-14
  • R22-11rel:R22-11#ef7d58082026-10-14
  • R23-11rel:R23-11#0f456ef02026-10-14
  • R24-11rel:R24-11#0f456ef02026-10-14
  • R25-11rel:R25-11#9ee381a92026-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