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
Guide utilisateurGÉNÉRÉ PAR IA
Encapsule les codes d'erreur, les messages de diagnostic et les types d'exception pour les opérations dans le cluster fonctionnel Raw Data Stream.
GÉNÉRÉ PAR IAnon vérifiéModèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 81f3fdb4f855ProvenanceQuestions ouvertes (2)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand
Encapsule les codes d'erreur, les messages de diagnostic et les types d'exception pour les opérations dans le cluster fonctionnel Raw Data Stream.
Le domaine d'erreur ara::rds::RdsErrorDomain identifie et catégorise les états d'erreur spécifiques du module Raw Data Stream conformément à AUTOSAR_AP_SWS_RawDataStream §1 « Raw Data Stream ». Il met à disposition les textes de message d'erreur associés et permet de lever des erreurs sous forme d'exceptions [SWS_RDS_11296]. Comme le constructeur par défaut est supprimé [SWS_RDS_11294], les applications accèdent à l'instance centrale via la fonction libre GetRdsErrorDomain()[SWS_RDS_11298].
Contexte
La classe ara::rds::RdsErrorDomain représente le domaine d'erreur spécifique pour le cluster fonctionnel Raw Data Stream (RDS) sur l'Adaptive Platform AUTOSAR_AP_SWS_RawDataStream §1 « Raw Data Stream ». En tant que spécialisation de la classe de base ara::core::ErrorDomain, elle intègre les états d'erreur liés aux flux dans le modèle de traitement des erreurs à l'échelle de la plateforme d'AUTOSAR. Parmi les tâches centrales de la classe figurent la mise à disposition d'un nom de domaine unique via la méthode Name()[SWS_RDS_11295] ainsi que l'association de codes d'erreur à des messages de diagnostic explicites au moyen de Message()[SWS_RDS_11296].
Pour une manipulation cohérente dans le code client, le domaine définit des alias de type standardisés : l'alias Errc renvoie à l'énumération RdsErrc[SWS_RDS_11326], tandis que l'alias de type Exception est lié au type d'exception RdsException[SWS_RDS_11327]. Les partenaires d'interaction sont principalement des composants applicatifs, des points de terminaison de streaming ainsi que les types d'infrastructure ara::core::ErrorCode et ara::core::Result, qui utilisent le domaine d'erreur pour identifier les erreurs survenues.
Cycle de vie
Les instances de ara::rds::RdsErrorDomain sont soumises à un cycle de vie strictement contrôlé. Une instanciation directe par le code client est explicitement empêchée, car le constructeur par défaut est supprimé (=delete) [SWS_RDS_11294]. À la place, l'accès est réalisé via la fonction utilitaire globale GetRdsErrorDomain(), qui renvoie une référence constante sur le domaine [SWS_RDS_11298].
Interprétation : le domaine d'erreur devrait être implémenté sous forme de singleton à longue durée de vie, existant pendant toute la durée d'exécution du processus. Question (ouverte) Comme toutes les interfaces d'interrogation telles que Name()[SWS_RDS_11295] et Message()[SWS_RDS_11296] sont déclarées comme const ainsi que noexcept, un accès en lecture concurrent et sûr au niveau des threads par plusieurs threads est possible sans coût de synchronisation.
Parcours d'utilisation
Le chemin d'utilisation typique se produit dès qu'une opération de Raw Data Stream échoue et qu'un objet d'erreur correspondant doit être analysé ou propagé. Une application ou une couche middleware reçoit généralement un objet d'erreur lié au domaine, ou référence directement le domaine via GetRdsErrorDomain()[SWS_RDS_11298]. Via la méthode Message(), le texte associé au code d'erreur peut être interrogé au moment de l'exécution et consigné dans des sorties de journalisation [SWS_RDS_11296].
Si la stratégie de traitement des erreurs de l'application repose sur des exceptions C++, la méthode ThrowAsException() est appelée [SWS_RDS_11297]. Cela transforme le ara::core::ErrorCode transmis en une exception du type RdsException, qui est spécifiée via l'alias de type Exception[SWS_RDS_11327].
Diagramme de séquence : déroulement typique du traitement des erreurs et du déclenchement d'exceptions via le domaine d'erreur de Raw Data Stream. Sources : [SWS_RDS_11296], [SWS_RDS_11297], [SWS_RDS_11298]
Scénarios d'erreur
Dans le contexte du domaine d'erreur lui-même, aucune exception ne survient pendant les requêtes régulières : les méthodes d'identification et de localisation Name()[SWS_RDS_11295] et Message()[SWS_RDS_11296] garantissent l'absence d'erreur grâce à leur spécification noexcept. La fonction d'accès GetRdsErrorDomain() n'échoue jamais non plus [SWS_RDS_11298].
Le scénario d'erreur principal concerne le traitement des exceptions : si un appelant invoque ThrowAsException() avec un ara::core::ErrorCode valide, la méthode ne se termine pas normalement, mais lève obligatoirement une exception (noexcept(false)) de type RdsException[SWS_RDS_11297]. La précondition pour cet appel est la transmission d'un code d'erreur cohérent issu du domaine ; la postcondition est le déclenchement de l'exception dans le contexte de l'appelant en vue de la suite du traitement dans le bloc catch correspondant.
Ce guide a été généré par une IA sur la base de la spécification AUTOSAR R25-11.
gemini-3.8-flash-low· 2026-10-13 · Original allemand