DEENESPTFRRUARHIKOZHNL

estrutura 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

Guia do utilizadorGERADO POR IA

Recebe os dados úteis de uma mensagem de resposta positiva para operações de upload de diagnóstico.
GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 6cf26bd1a154 Procedência Perguntas em aberto (2)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Recebe os dados úteis de uma mensagem de resposta positiva para operações de upload de diagnóstico.

A estrutura ara::diag::UploadService::OperationOutput serve como parâmetro de saída para o retorno de dados úteis de uma resposta de diagnóstico positiva em serviços de upload [SWS_DM_00796]. O software aplicativo instancia o objeto após a execução bem-sucedida de uma operação de upload e preenche o membro responseData com os bytes de dados a serem enviados [SWS_DM_00796]. O conteúdo de responseData não pode conter um Service Identifier (SID) e deve corresponder às exigências específicas da operação de serviços como UploadData ou RequestUploadExit. Interpretação: em caso de falha, a estrutura não é utilizada, sendo sinalizado um status de resposta negativo. Pergunta Q-52a8538825bc0a30 (aberta)

Contexto

A estrutura ara::diag::UploadService::OperationOutput atua como contêiner de dados para os dados úteis de uma operação de diagnóstico bem-sucedida no âmbito do serviço de upload do lado do veículo [SWS_DM_00796]. Sua responsabilidade primária consiste em encapsular os dados para uma mensagem de resposta positiva («positive response message») e encaminhá-los para a plataforma [SWS_DM_00796].

No sistema global, três componentes interagem neste processo: o cliente de diagnóstico externo (testador), o ambiente de tempo de execução de diagnóstico do sistema Adaptive (ara::diag) e a implementação específica da aplicação do UploadService [SWS_DM_00796]. Assim que o testador solicita uma operação de serviço UDS, ara::diag delega o processamento ao provedor de serviço responsável da aplicação, o qual retorna o resultado para a camada de plataforma via OperationOutput [SWS_DM_00796].

OperationOutputContext client Cliente de diagnóstico aradiag ara::diag client->aradiag Requisição UDS aradiag->client Positive Antwort app UploadService Provider aradiag->app Dienstaufruf app->aradiag OperationOutput

Diagrama de contexto: interação entre cliente de diagnóstico, ambiente de tempo de execução ara::diag e UploadService na disponibilização de dados de resposta. Fontes: [SWS_DM_00796], AUTOSAR_AP_SWS_Diagnostics, p. 74.

Ciclo de vida

A estrutura OperationOutput é concebida como um puro objeto de transferência de dados sem lógica de estado própria e é disponibilizada por meio do cabeçalho #include "ara/diag/upload.h" [SWS_DM_00796]. Seu ciclo de vida divide-se nas seguintes fases:

  • Criação: a instanciação ocorre no lado da aplicação dentro da operação de diagnóstico em execução, assim que os dados de upload solicitados foram reunidos com sucesso. Interpretação: o objeto é criado provavelmente de forma local na pilha (stack) da aplicação do serviço. Pergunta (aberta)
  • Preenchimento: a lógica da aplicação atribui ao membro público responseData do tipo ara::core::Vector<std::uint8_t> os dados úteis a serem disponibilizados [SWS_DM_00796].
  • Transição de posse: o objeto é entregue a ara::diag como resultado da operação. Interpretação: esta entrega deve ocorrer por valor ou semântica de movimento, passando a responsabilidade pelos dados para a plataforma. Pergunta (aberta)
  • Destruição: após a serialização dos dados úteis na mensagem de resposta UDS, a estrutura é liberada pelo ambiente de tempo de execução.

Em termos de simultaneidade, OperationOutput não oferece sincronização interna. No entanto, como as instâncias são criadas dedicadas para cada chamada de operação e processadas localmente por thread, não é necessária nenhuma gestão de estado compartilhado.

Caminho de utilização

O fluxo regular para a disponibilização de dados de resposta via OperationOutput abrange uma sequência fixa de etapas de interação:

  1. Um testador externo envia uma solicitação de upload (como UploadData ou RequestUploadExit) para a unidade de controle [SWS_DM_00796].
  2. O gerenciamento de diagnóstico ara::diag processa o cabeçalho do protocolo e chama a operação correspondente da instância da aplicação de UploadService [SWS_DM_00796].
  3. A aplicação processa a solicitação, cria uma instância de OperationOutput e preenche responseData com os dados úteis [SWS_DM_00796]. Neste contexto, responseData pode conter exclusivamente os dados úteis sem o Service Identifier (SID) [SWS_DM_00796]. Conforme a operação, variam o conteúdo exigido bem como a posição inicial dos dados na mensagem de resposta positiva [SWS_DM_00796].
  4. A estrutura é retornada a ara::diag.
  5. A camada de plataforma gera a mensagem de resposta UDS completa e transmite-a ao testador [SWS_DM_00796].
Sequência de chamadas para fornecimento de dados de resposta via OperationOutputCliente de diagnósticoara::diagUploadService ProviderUDS-Upload-Anfrage (z. B. UploadData)Dienstaufruf an UploadServiceInstanciar OperationOutput e preencher responseDataRetorno de OperationOutputResposta positiva UDS (dados úteis sem SID)

Diagrama de sequência: sequência de chamadas para o retorno de dados de diagnóstico por meio de OperationOutput. Fontes: [SWS_DM_00796], AUTOSAR_AP_SWS_Diagnostics, p. 74.

Cenários de erro

A estrutura OperationOutput é especificada exclusivamente para execuções bem-sucedidas e mensagens de resposta positivas [SWS_DM_00796]. Se uma operação falhar (por exemplo, devido a faixas de endereço inválidas ou erros de sequência em UploadData), OperationOutput não é utilizada. Interpretação: fluxos com falha são reportados provavelmente a ara::diag por meio de códigos de erro de diagnóstico (NRCs) separados, de modo que a criação ou o preenchimento da estrutura de saída não ocorrem. Pergunta Q-fa3daf3152f7131c (aberta)

Como pré-condição para o retorno, aplica-se que responseData compreende exatamente os bytes exigidos pela respectiva operação de serviço e não contém identificadores de protocolo prefixados [SWS_DM_00796]. Como pós-condição, o gerenciamento de diagnóstico assume os dados para a finalização da comunicação de barramento [SWS_DM_00796].

Este guia baseia-se nos requisitos da AUTOSAR Adaptive Platform R25-11.

Diagrama de classes UML

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

G nara__diag__UploadService__OperationOutput307 «struct» OperationOutput + responseData

Constantes

responseData variável

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.

Documentação das constantes / variáveis

variável 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#997bdcce
Content hash
997bdcce
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