Encapsulates content elements and result parameters for standardized SOVD diagnostic services and operation executions.
AI-GENERATEDunreviewedModel: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 5ebd4d309016ProvenanceOpen questions (2)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original
Encapsulates content elements and result parameters for standardized SOVD diagnostic services and operation executions.
The struct ara::diag::DiagnosticSovdContentData serves as a standardized data container for encapsulating diagnostic content for SOVD services in AUTOSAR Adaptive ([SWS_DM_02385]). It holds the payload in a public vector of content elements ([SWS_DM_02386]), from which Diagnostic Management generates the SOVD attribute parameters during operation and status responses. As a pure value transfer object, the struct offers no internal thread synchronization, which is why concurrent modifications must be safeguarded within the application.
Context
The data structure ara::diag::DiagnosticSovdContentData is part of the diagnostic module (diag) of the AUTOSAR Adaptive Platform and is declared in the header ara/diag/diagnostic_sovd_content_data.h (AUTOSAR_AP_SWS_Diagnostics §8.59 “Header: ara/diag/diagnostic_sovd_content_data.h”, [SWS_DM_02385]). It acts as a standardized data carrier for encapsulating diagnostic content in service-oriented vehicle diagnostics according to ASAM SOVD.
Within the platform, the struct mediates between the diagnostic server (Diagnostic Management, DM) and the service providers of an Adaptive Application ([SWS_DM_01396], [SWS_DM_02174]). If an operation or a status query is triggered by an external SOVD client, the DM delegates the call to the implementing software component. The generated output data is placed by the application into an instance of DiagnosticSovdContentData ([SWS_DM_02386]). Subsequently, the DM transfers this content into the SOVD response body, specifically into the standardized attribute parameters ([SWS_DM_02176], [SWS_DM_02181]).
The definition as a C++ struct (AUTOSAR_AP_SWS_Diagnostics §8.59.1.1 “Public Member Variables”, [SWS_DM_02385]) assigns DiagnosticSovdContentData the role of a data container. The struct has the public member variable elements of type ara::core::Vector<DiagnosticSovdContentElementData> ([SWS_DM_02386]), in which the individual content elements are managed dynamically.
Creation of the instance typically occurs locally within the service provider methods as soon as diagnostic data is assembled for a response. For asynchronous interfaces such as Read (AUTOSAR_AP_SWS_Diagnostics §8.x “Read”), the object is encapsulated in a ara::core::Future<DiagnosticSovdContentData>. Interpretation: Here, the struct is likely to pass into the ownership of the caller via pass-by-value or move semantics, so that its lifetime is tied to the processing Future object. Question Q-564c59896de41f85 (open)
With regard to concurrency, the struct contains no internal synchronization primitives. Interpretation: Because this is a pure value transfer object (Value Object), no internal thread protection is likely to exist; concurrent accesses to the same instance must therefore be synchronized by the calling application logic. Question (open) Destruction of the instance occurs automatically upon leaving the scope of the managing context.
Usage Path
The primary usage path of DiagnosticSovdContentData lies in providing payload data during synchronous operation executions as well as during status queries in the SOVD framework:
An external SOVD client sends a request to start an operation according to ASAM SOVD to the vehicle ([SWS_DM_01396]).
After validating the constraints, Diagnostic Management delegates the execution to the responsible operation via ara::diag::GenericDiagnosticSovdOperation::StartExecution ([SWS_DM_02174]).
The service application executes the diagnostic operation, instantiates DiagnosticSovdContentData, and populates the member elements with the generated element data ([SWS_DM_02386]).
The object is passed to Diagnostic Management as part of the return value for synchronous executions ([SWS_DM_02176]).
Diagnostic Management reads the values from DiagnosticSovdContentData, transfers them into the attribute parameters of the SOVD response body, and sends the response to the client ([SWS_DM_02176]).
An analogous path applies to the status query via SovdOperationExecution::GetStatus ([SWS_DM_02180]), where the attribute parameters is likewise derived from the passed DiagnosticSovdContentData ([SWS_DM_02181]). Content providers also use the same struct as a return type via Read (AUTOSAR_AP_SWS_Diagnostics §8.x “Read”).
gemini-3.8-flash-low· 2026-10-13 · German original