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.
Encapsule les données binaires lues et leur nombre d'octets à partir d'un RawDataStream avec propriété exclusive du tampon.
GÉNÉRÉ PAR IAnon vérifiéModèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 8e3411ab8137ProvenanceQuestions ouvertes (3)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand
Encapsule les données binaires lues et leur nombre d'octets à partir d'un RawDataStream avec propriété exclusive du tampon.
La structure ara::rds::ReadDataResult encapsule le résultat d'une opération de lecture issue d'un flux de données brutes d'AUTOSAR Adaptive Platform (AUTOSAR_AP_SWS_RawDataStream, p. 1). Elle est générée par les méthodes ReadData et met à disposition les données binaires lues dans le tampon data conjointement avec le nombre effectif d'octets numberOfBytes[SWS_RDS_11301]. Comme le tampon est géré sous forme de std::unique_ptr, la structure transfère probablement la propriété exclusive à l'appelant et exclut la copie. Question (ouverte) Les erreurs sont signalées via le ara::core::Result englobant, raison pour laquelle le résultat doit être validé avant d'accéder aux données.
Contexte
La classe ara::rds::ReadDataResult agit dans le module rds (RawDataStream) d'AUTOSAR Adaptive Platform en tant que conteneur de résultat structuré pour les récupérations de données depuis des flux de données (AUTOSAR_AP_SWS_RawDataStream, p. 1). Sa responsabilité principale consiste à transmettre à l'application appelante les octets de données brutes lus depuis un flux de données brutes avec le nombre d'octets effectivement transféré. Dans l'ensemble du système, les partenaires d'interaction sont les instances de flux qui proposent les méthodes de lecture ReadData, ainsi que le composant applicatif respectif qui évalue le flux de données et poursuit le traitement des données [SWS_RDS_10486], [SWS_RDS_11322].
Cycle de vie
Des instances de ara::rds::ReadDataResult sont créées dans le cadre d'opérations de lecture synchrones ou limitées dans le temps. La création est initiée lorsqu'un appelant appelle la méthode ReadData(std::size_t maxLength)[SWS_RDS_10486], [SWS_RDS_11322] ou la surcharge avec surveillance temporelle ReadData(std::size_t maxLength, std::chrono::milliseconds timeout)[SWS_RDS_11309], [SWS_RDS_11323].
Les rapports de propriété et le cycle de vie de la mémoire sont déterminés de manière déterminante par l'élément de données contenu data, qui est déclaré comme std::unique_ptr<ara::core::Byte[]>[SWS_RDS_11301]. Selon l'interprétation habituelle en C++, cela signifie que ReadDataResult est probablement conçu comme un type à déplacement exclusif (move-only) et ne peut donc pas être copié, mais uniquement déplacé. Question Q-fe4b113c5852b5aa (ouverte) À la réception de l'objet, le programme appelant assume la propriété exclusive du tampon de données alloué. La destruction de l'instance entraîne automatiquement la libération de la mémoire tas réservée pour le tableau d'octets, à moins que le pointeur n'ait été préalablement extrait explicitement de l'objet. Concernant la concurrence, il n'existe aucune synchronisation interne ; l'accès concurrent à une instance depuis plusieurs threads sans verrous externes n'est pas thread-safe.
Parcours d'utilisation
Le déroulement régulier de l'utilisation de ara::rds::ReadDataResult s'articule selon les étapes suivantes :
Demande de l'opération de lecture : l'application appelle sur le flux ReadData avec la quantité maximale de données souhaitée maxLength[SWS_RDS_10486], [SWS_RDS_11322], complétée optionnellement par une valeur de timeout [SWS_RDS_11309], [SWS_RDS_11323].
Retour du conteneur de résultat : le flux lit les données binaires à partir du canal et renvoie en cas de succès un objet renseigné de type ara::core::Result<ReadDataResult> (AUTOSAR_AP_SWS_RawDataStream, p. 1).
Détermination de la taille : l'application lit le champ numberOfBytes[SWS_RDS_11302]. Interprétation : cette valeur devrait indiquer la quantité d'octets effectivement fournie dans le tampon, qui peut être inférieure ou égale au maxLength demandé. Question Q-12bde8c67452a632 (ouverte)
Traitement des données : le tampon data est déréférencé [SWS_RDS_11301] afin de traiter les octets reçus ou de les transférer dans des structures propres à l'application au moyen de la sémantique de déplacement (move).
Les scénarios d'erreur typiques comprennent les interruptions de flux, les requêtes de lecture non valides ou l'expiration du délai d'attente lors d'appels de lecture surveillés dans le temps [SWS_RDS_11309], [SWS_RDS_11323]. Interprétation : lors de tels échecs, le ara::core::Result ne contient probablement pas d'objet ReadDataResult valide, mais un code d'erreur correspondant. Question Q-f3f971c4789fe8e7 (ouverte) Pour l'application, cela implique comme précondition pour l'accès à data[SWS_RDS_11301] et numberOfBytes[SWS_RDS_11302] de toujours vérifier d'abord l'état de réussite de l'objet parent Result, afin d'empêcher l'accès à des pointeurs non initialisés ou à des zones mémoire non valides.
Ce guide a été généré par une IA sur la base de la spécification AUTOSAR AP R25-11.
gemini-3.8-flash-low· 2026-10-13 · Original allemand