Diese Seite wurde vollständig KI-generiert auf Basis von SWS Raw Data Stream (R25-11) — kein offizieller AUTOSAR-Text und keine automatisch extrahierte API-Seite wie die übrigen Module. Als Interpretation gekennzeichnete Aussagen sind Schlussfolgerungen aus den Quellen.
class RdsErrorDomain final : public ara::core::ErrorDomain {...};
Error domain of Raw Data Stream.
Header-Datei
#include "ara/rds/rds_error_domain.h"
Scope
namespace ara::rds
Guia do utilizadorGERADO POR IA
Encapsula códigos de erro, mensagens de diagnóstico e tipos de exceção para operações no cluster funcional do Raw Data Stream.
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 81f3fdb4f855ProcedênciaPerguntas em aberto (2)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
Encapsula códigos de erro, mensagens de diagnóstico e tipos de exceção para operações no cluster funcional do Raw Data Stream.
O domínio de erros ara::rds::RdsErrorDomain identifica e categoriza estados de erro específicos do módulo Raw Data Stream de acordo com AUTOSAR_AP_SWS_RawDataStream §1 «Raw Data Stream». Disponibiliza textos de mensagens de erro associados e permite o lançamento de erros como exceções [SWS_RDS_11296]. Como o construtor padrão está eliminado [SWS_RDS_11294], as aplicações acedem à instância central através da função livre GetRdsErrorDomain()[SWS_RDS_11298].
Contexto
A classe ara::rds::RdsErrorDomain representa o domínio de erros específico para o cluster funcional do Raw Data Stream (RDS) na Adaptive Platform AUTOSAR_AP_SWS_RawDataStream §1 «Raw Data Stream». Como especialização da classe base ara::core::ErrorDomain, integra estados de erro relacionados com o fluxo no modelo de tratamento de erros de toda a plataforma da AUTOSAR. Entre as tarefas centrais da classe contam-se a disponibilização de um nome de domínio unívoco através do método Name()[SWS_RDS_11295], bem como a associação de códigos de erro a mensagens de diagnóstico expressivas mediante Message()[SWS_RDS_11296].
Para uma manipulação consistente no código de cliente, o domínio define aliases de tipo padronizados: o alias Errc referencia a enumeração RdsErrc[SWS_RDS_11326], enquanto o alias de tipo Exception está vinculado ao tipo de exceção RdsException[SWS_RDS_11327]. Os parceiros de interação são sobretudo componentes de aplicação, pontos terminais de streaming e os tipos de infraestrutura ara::core::ErrorCode e ara::core::Result, que utilizam o domínio de erros para identificar erros ocorridos.
Ciclo de vida
As instâncias de ara::rds::RdsErrorDomain estão sujeitas a um ciclo de vida estritamente controlado. Uma instanciação direta pelo código de cliente é explicitamente impedida, uma vez que o construtor padrão está eliminado (=delete) [SWS_RDS_11294]. Em alternativa, o acesso é concretizado através da função auxiliar global GetRdsErrorDomain(), que retorna uma referência constante para o domínio [SWS_RDS_11298].
Interpretação: o domínio de erros deverá estar implementado como um singleton de longa duração que existe durante todo o período de execução do processo. Pergunta (aberta) Uma vez que todas as interfaces de consulta, como Name()[SWS_RDS_11295] e Message()[SWS_RDS_11296], estão declaradas como const e noexcept, é possível um acesso de leitura concorrente e seguro para threads por múltiplas threads sem sobrecarga de sincronização.
Caminho de utilização
O caminho de utilização típico ocorre assim que uma operação do Raw Data Stream falha e um objeto de erro correspondente tem de ser analisado ou propagado. Uma aplicação ou camada de middleware recebe, por norma, um objeto de erro vinculado ao domínio ou referencia diretamente o domínio através de GetRdsErrorDomain()[SWS_RDS_11298]. Através do método Message(), o texto associado ao código de erro pode ser consultado em tempo de execução e registado em saídas de log [SWS_RDS_11296].
Caso a estratégia de tratamento de erros da aplicação se baseie em exceções C++, o método ThrowAsException() é chamado [SWS_RDS_11297]. Isto transforma o ara::core::ErrorCode passado numa exceção do tipo RdsException, especificada através do alias de tipo Exception[SWS_RDS_11327].
Diagrama de sequência: fluxo típico de tratamento de erros e disparo de exceções através do domínio de erros do Raw Data Stream. Fontes: [SWS_RDS_11296], [SWS_RDS_11297], [SWS_RDS_11298].
Cenários de erro
No contexto do próprio domínio de erros, não ocorrem exceções durante consultas regulares: os métodos de identificação e localização Name()[SWS_RDS_11295] e Message()[SWS_RDS_11296] garantem a ausência de erros através da sua especificação noexcept. A função de acesso GetRdsErrorDomain() também nunca falha [SWS_RDS_11298].
O cenário de erro primário diz respeito ao tratamento de exceções: se um chamador chamar ThrowAsException() com um ara::core::ErrorCode válido, o método não termina de forma regular, mas lança obrigatoriamente uma exceção (noexcept(false)) do tipo RdsException[SWS_RDS_11297]. A pré-condição para esta chamada é a passagem de um código de erro consistente do domínio; a pós-condição é o disparo da exceção no contexto do chamador para posterior tratamento no bloco catch correspondente.
Este guia foi elaborado por uma IA com base na especificação AUTOSAR R25-11.
gemini-3.8-flash-low· 2026-10-13 · Original em alemão