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.
template<typename T> class IEEE1722RawDataStreamConsumer final {...};
Consumer for typed IEEE 1722 stream datagrams.
Header-Datei
#include "ara/rds/raw_data_stream_IEEE1722.h"
Scope
namespace ara::rds
Guide utilisateurGÉNÉRÉ PAR IA
Reçoit des datagrammes de streaming IEEE 1722 typés via un point de terminaison de communication configuré.
GÉNÉRÉ PAR IAnon vérifiéModèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : e1b5fefad19bProvenanceQuestions ouvertes (2)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand
Reçoit des datagrammes de streaming IEEE 1722 typés via un point de terminaison de communication configuré.
La classe template ara::rds::IEEE1722RawDataStreamConsumer sert à la réception typée de datagrammes de streaming IEEE 1722 dans l'AUTOSAR Adaptive Platform. Les instances sont créées via la méthode statique Create() avec un InstanceSpecifier[SWS_RDS_90312], puis connectées au flux de données via Connect(). La méthode ReadData() permet de lire les datagrammes entrants jusqu'à un nombre maximal prédéfini [SWS_RDS_90321]. Les opérations de copie sont exclues, de sorte que la connexion ne peut être transmise qu'exclusivement par des opérations de déplacement, dont l'exécution n'est pas sûre pour les threads.
Contexte
La classe template ara::rds::IEEE1722RawDataStreamConsumer fait office de récepteur typé pour les datagrammes de streaming IEEE 1722 au sein du module de flux de données brutes (rds) de l'AUTOSAR Adaptive Platform. Le paramètre template T définit le type de données utiles concret des datagrammes. La classe encapsule l'accès au flux de données et rattache les points de terminaison de communication à l'infrastructure de communication configurée via un identifiant de type ara::core::InstanceSpecifier[SWS_RDS_90312]. Les applications utilisent ce consommateur pour recevoir directement et de manière économe en ressources des flux de données utiles structurés AVTP ou IEEE 1722.
Cycle de vie
L'instanciation d'un consommateur s'effectue exclusivement via la méthode de fabrique statique Create()[SWS_RDS_90312] en indiquant l'instance cible. Aucun appel direct du constructeur n'est prévu pour les utilisateurs. La classe implémente une sémantique stricte de déplacement seul (move-only) : la copie d'instances est explicitement interdite, car le constructeur de copie [SWS_RDS_90316] ainsi que l'opérateur d'assignation par copie [SWS_RDS_90317] sont supprimés. Cela garantit que la connexion sous-jacente et les ressources de tampon restent toujours sous une propriété univoque.
Afin de permettre les transferts de propriété entre contextes, la classe fournit un constructeur de déplacement [SWS_RDS_90314] ainsi qu'un opérateur d'assignation par déplacement [SWS_RDS_90315]. Les deux opérations de déplacement sont déclarées comme n'étant pas sûres pour les threads, raison pour laquelle les accès concurrents à la même instance doivent être synchronisés. Lors de la destruction de l'instance, le destructeur ~IEEE1722RawDataStreamConsumer() ferme automatiquement une connexion éventuellement encore existante [SWS_RDS_90318] ; le destructeur est également spécifié comme n'étant pas sûr pour les threads.
Parcours d'utilisation
Le déroulement typique lors de l'utilisation d'un IEEE1722RawDataStreamConsumer comprend quatre phases successives :
Création : l'application crée l'instance du consommateur via la méthode de fabrique Create() avec le ara::core::InstanceSpecifier souhaité [SWS_RDS_90312].
Établissement de la connexion : avant la réception de données utiles, l'application connecte le consommateur au flux de données configuré en appelant Connect()[SWS_RDS_90319].
Réception de données : l'application appelle ReadData() de manière répétée ou cyclique [SWS_RDS_90321]. Le paramètre maxNumberOfDatagrams indique alors le nombre maximal de datagrammes à interroger lors de l'appel. Le résultat est renvoyé sous la forme d'un vecteur du type template T.
Fermeture de la connexion : une fois le transfert de données terminé, l'application met fin à la connexion de manière explicite via Shutdown()[SWS_RDS_90320] ou laisse le nettoyage au destructeur [SWS_RDS_90318].
Toutes les fonctions d'interface régulières de la classe – Create()[SWS_RDS_90312], Connect()[SWS_RDS_90319], ReadData()[SWS_RDS_90321] et Shutdown()[SWS_RDS_90320] – sont qualifiées avec noexcept et ne signalent pas les états d'erreur par des exceptions C++, mais via le type de retour ara::core::Result. Les applications doivent donc vérifier, avant d'accéder aux valeurs de données ou avant des opérations ultérieures, si le résultat respectif contient une valeur ou une erreur.
Les constellations d'erreurs possibles comprennent l'échec de la création de l'instance si la configuration du InstanceSpecifier est erronée, ainsi que des interruptions de connexion ou des erreurs lors de l'accès réseau pendant Connect() ou ReadData(). Interprétation : un appel de ReadData() devrait supposer qu'un établissement de connexion réussi a été préalablement effectué au moyen de Connect(). Question Q-ea5241fe8b3e95a8 (ouverte) Les causes d'erreur concrètes devraient être véhiculées de manière idiomatique sous forme de codes d'erreur dans le ara::core::Result renvoyé.
Ce guide a été généré par un système d'IA sur la base de la spécification AUTOSAR Adaptive Platform Release R25-11.
gemini-3.8-flash-low· 2026-10-13 · Original allemand