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 RdsException : public ara::core::Exception {...};
Exception type for Raw Data Stream.
Header-Datei
#include "ara/rds/rds_error_domain.h"
Scope
namespace ara::rds
Guia do utilizadorGERADO POR IA
Serve como tipo de exceção específico de domínio para o tratamento de erros em operações no Raw Data Stream.
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: b9745284d7f2ProcedênciaPerguntas em aberto (2)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
Serve como tipo de exceção específico de domínio para o tratamento de erros em operações no Raw Data Stream.
A classe ara::rds::RdsException representa o tipo de exceção especializado para o módulo Raw Data Stream e serve para o encaminhamento de erros com base em ara::core::ErrorCode[SWS_RDS_11292]. A instanciação ocorre tipicamente no âmbito do tratamento de erros por ThrowAsException, o que dispara um cancelamento estruturado do fluxo com falha [SWS_RDS_11297]. O construtor declarado como noexcept garante que nenhum erro consequencial ocorra no sistema de tempo de execução durante a criação da exceção. O código de aplicação chamador deve capturar a exceção para evitar a terminação do programa.
Contexto
No contexto da AUTOSAR Adaptive Platform, a classe ara::rds::RdsException atua como um tipo de exceção dedicado para o Raw Data Stream (rds), conforme especificado em SWS RawDataStream §1 «Raw Data Stream». Ela deriva diretamente da classe base geral ara::core::Exception e integra perfeitamente o modelo de erros do módulo ao tratamento de exceções da plataforma. Dentro do namespace do RDS, o tipo é disponibilizado por meio do alias de tipo Exception[SWS_RDS_11327], o que possibilita aos utilizadores e componentes do módulo uma nomenclatura uniforme e simplificada. Os principais parceiros de interação incluem domínios de erro, como o domínio declarado em ara/rds/rds_error_domain.h, bem como código de aplicação que trata erros por meio de exceções [SWS_RDS_11292].
Ciclo de vida
Instâncias de ara::rds::RdsException são criadas sob demanda assim que a ocorrência de um evento de erro força o cancelamento do fluxo de controle regular. A instanciação ocorre por meio de um construtor explícito que recebe um objeto ara::core::ErrorCode[SWS_RDS_11292]. Este construtor é declarado como noexcept, garantindo que a própria criação do objeto não falhe sob nenhuma circunstância nem lance outra exceção. O objeto de exceção obedece à semântica de valor regular do C++: ele é transferido para a memória de exceções do ambiente de tempo de execução ao ser lançado. Como é habitual para tipos de exceção em ara::core, o momento de destruição provavelmente está vinculado à saída do bloco catch responsável, assim que a referência ao objeto de exceção expira. Em ambientes de execução concorrente, a classe comporta-se de forma thread-safe, visto que cada situação de exceção é instanciada e propagada de maneira isolada em nível local à thread. Pergunta Q-5673ede6a9688b85 (aberta)
Caminho de utilização
O caminho de utilização típico compreende a detecção de um estado de erro na operação de stream, a conversão do código de erro em uma exceção e a captura subsequente no código de aplicação. Se ocorrer um erro durante uma operação, este é representado primariamente como ara::core::ErrorCode. Em vez de uma consulta manual, o lançamento da exceção pode ser iniciado pelo método ThrowAsException, que encapsula a conversão e o processo de disparo [SWS_RDS_11297]. Interpretação: a chamada de ThrowAsException provavelmente delega internamente de forma direta ao construtor de RdsException e lança a instância recém-criada por meio de throw[SWS_RDS_11292]. O código chamador captura a exceção através do tipo concreto ara::rds::RdsException, do alias ara::rds::Exception[SWS_RDS_11327] ou polimorficamente através de ara::core::Exception. Pergunta Q-d8734426a5c71e07 (aberta)
Diagrama de sequência: interação no disparo e na captura de uma exceção do RDS via ErrorCode. Fontes: [SWS_RDS_11292], [SWS_RDS_11297].
Cenários de erro
Cenários de erro em torno de ara::rds::RdsException dizem respeito principalmente à consistência da propagação de erros e à prevenção de terminações de programa não tratadas. A operação de disparo ThrowAsException é definida explicitamente como noexcept(false)[SWS_RDS_11297], visto que o lançamento da exceção representa o comportamento pretendido em caso de erros. Um cenário de erro crítico surge quando o código chamador ignora o potencial cancelamento do fluxo de controle e não fornece um manipulador de exceção adequado; um tratamento incompleto leva à terminação imediata do processo via std::terminate. No entanto, a garantia noexcept do construtor [SWS_RDS_11292] assegura que nenhum erro aninhado de inicialização possa ocorrer na própria disponibilização da exceção.
Este guia baseia-se nos requisitos da especificação AUTOSAR para Raw Data Stream (R25-11).
gemini-3.8-flash-low· 2026-10-13 · Original em alemão