Oferece acesso de leitura somente para leitura e thread-safe a elementos de registro de dados SOVD diagnósticos.
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 5db4cee55bd3ProcedênciaPerguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
Oferece acesso de leitura somente para leitura e thread-safe a elementos de registro de dados SOVD diagnósticos.
A classe oferece uma visualização imutável de elementos de conteúdo de registro SOVD estruturados para avaliação eficiente e somente para leitura em aplicações de diagnóstico ([SWS_DM_02295]). Os usuários podem verificar o status de erro por meio de objetos de resultado, endereçar elementos de registro de dados especificamente por chave ou percorrer todo o conteúdo sequencialmente usando iteradores constantes ([SWS_DM_02300]). Todas as interfaces são totalmente thread-safe e declaradas como seguras contra exceções, mas pressupõem que o elemento de conteúdo referenciado corresponda ao tipo de registro esperado.
Contexto
A classe ara::diag::DiagnosticSovdRecordContentElementDataConstView define uma visualização imutável (Const View) de elementos de conteúdo SOVD diagnósticos do tipo de conjunto de dados Record ([SWS_DM_02295], AUTOSAR_AP_SWS_Diagnostics §8.60.9 «Class: DiagnosticSovdRecordContentElementDataConstView»). A interface é disponibilizada por meio do cabeçalho #include "ara/diag/diagnostic_sovd_content_element_data.h" ([SWS_DM_02298]). Ela permite que aplicações de diagnóstico leiam de maneira direcionada e estruturada campos de dados organizados hierarquicamente de um elemento de conteúdo SOVD, sem a necessidade de criar cópias dos dados úteis ou executar operações modificadoras.
Entre os principais parceiros de interação estão o componente de diagnóstico chamador, o objeto subjacente do tipo DiagnosticSovdContentElementData, bem como os elementos individuais endereçados por meio dele, os quais são disponibilizados como empacotamento de referência constante std::reference_wrapper<DiagnosticSovdContentElementData const> ou por meio de iteradores constantes ([SWS_DM_02300], [SWS_DM_02301]).
Ciclo de vida
Como tipo de visualização, presume-se que ara::diag::DiagnosticSovdRecordContentElementDataConstView não possua propriedade própria (ownership) dos dados úteis subjacentes; a validade da visualização deve estar vinculada ao tempo de vida do objeto DiagnosticSovdContentElementData referenciado. Pergunta Q-4aca4f6f723cd3f5 (aberta) A destruição da instância de visualização libera apenas o descritor de visualização, deixando a estrutura de dados subjacente intacta.
Em relação à concorrência, todas as funções-membro da classe são explicitamente especificadas como thread-safe e seguras contra exceções (noexcept) ([SWS_DM_02296], [SWS_DM_02298]). Várias threads podem, portanto, acessar a interface para leitura de forma paralela e livre de sincronização, desde que a estrutura de dados referenciada não seja modificada concorrentemente durante o acesso.
Caminho de utilização
Um fluxo típico para a avaliação de um elemento Record é dividido em verificação de erros, verificação de dimensões e acesso aos elementos:
Verificar estado de erro: antes do processamento, valida-se por meio de HasError() se o conteúdo está livre de erros ([SWS_DM_02296]).
Acesso direcionado a elementos: antes de acessar um campo nomeado, a presença de uma chave pode ser verificada usando HasContentElement() ([SWS_DM_02305]). O acesso aleatório ocorre em seguida por meio de operator[] com a passagem de um ara::core::StringView, o qual retorna uma referência ao subelemento ([SWS_DM_02300]). Como alternativa, Find() fornece um iterador para o elemento encontrado ([SWS_DM_02306]).
A classe utiliza o tipo de retorno ara::core::Result para tratamento de erros em vez de exceções C++:
Estado de erro interno: se o elemento de conteúdo SOVD subjacente apresentar um erro, HasError() retorna um ara::core::Result<void> que contém o código de erro ara::diag::DiagSovdErrc ([SWS_DM_02296]).
Chave ausente ou conflito de tipo: no acesso via operator[] ou na verificação com HasContentElement(), o valor de retorno fornece um resultado de erro caso o DiagnosticSovdContentElementData não seja do tipo RecordContentElementData ou ContentData ou se a chave especificada não existir ([SWS_DM_02300], [SWS_DM_02305]).
Returns the begin operator of a RecordContentElementData. This DiagnosticSovdContentElementData shall be of type RecordContentElementData or ContentData
auto Begin () noexcept -> DiagnosticSovdRecordContentElementDataConst Iterator;
Returns the begin operator of a RecordContentElementData. This DiagnosticSovdContentElementData shall be of type RecordContentElementData or ContentData
auto CBegin () noexcept -> DiagnosticSovdRecordContentElementDataConst Iterator;
Returns if the RecordContentElementData contains an element with the specified key. This DiagnosticSovdContentElementData shall be of type RecordContentElementData or ContentData
Returns the count of elements in the RecordContentElementData. This DiagnosticSovdContentElementData shall be of type RecordContentElementData or ContentData
auto Begin () noexcept -> DiagnosticSovdRecordContentElementDataConst Iterator;
Returns the begin operator of a RecordContentElementData. This DiagnosticSovdContentElementData shall be of type RecordContentElementData or ContentData
auto CBegin () noexcept -> DiagnosticSovdRecordContentElementDataConst Iterator;
Returns the begin operator of a RecordContentElementData. This DiagnosticSovdContentElementData shall be of type RecordContentElementData or ContentData
Returns if the RecordContentElementData contains an element with the specified key. This DiagnosticSovdContentElementData shall be of type RecordContentElementData or ContentData
boolean indicating if the elements is found or an error if Diagnostic SovdContentElementData is not of type RecordContentElement Data or ContentData OR the key is not found
Request a governed re-review of this record. The record is not changed immediately.
Returns the count of elements in the RecordContentElementData. This DiagnosticSovdContentElementData shall be of type RecordContentElementData or ContentData
reference to the content element or an error if DiagnosticSovdContentElementData is not of type RecordContentElementData or ContentData OR the key is not found
Request a governed re-review of this record. The record is not changed immediately.
gemini-3.8-flash-low· 2026-10-13 · Original em alemão