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
User GuideKI-GENERIERT
Empfängt typisierte IEEE-1722-Streaming-Datagramme über einen konfigurierten Kommunikationsendpunkt.
KI-GENERIERTungeprüftModell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: e1b5fefad19bHerkunftOffene Fragen (2)
KI-generiertgemini-3.8-flash-medium · 2026-10-13
Empfängt typisierte IEEE-1722-Streaming-Datagramme über einen konfigurierten Kommunikationsendpunkt.
Die Template-Klasse ara::rds::IEEE1722RawDataStreamConsumer dient dem typisierten Empfang von IEEE-1722-Streaming-Datagrammen in der AUTOSAR Adaptive Platform. Instanzen werden über die statische Methode Create() mit einem InstanceSpecifier erzeugt [SWS_RDS_90312] und anschließend über Connect() mit dem Datenstrom verbunden. Über die Methode ReadData() können eingehende Datagramme bis zu einer vorgegebenen Maximalanzahl ausgelesen werden [SWS_RDS_90321]. Kopiervorgänge sind ausgeschlossen, sodass die Verbindung exklusiv durch Move-Operationen weitergegeben werden kann, deren Ausführung nicht threadsicher ist.
Kontext
Die Template-Klasse ara::rds::IEEE1722RawDataStreamConsumer fungiert als typisierter Empfänger für IEEE-1722-Streaming-Datagramme innerhalb des Rohdatenstrom-Moduls (rds) der AUTOSAR Adaptive Platform. Über den Template-Parameter T wird der konkrete Nutzdatentyp der Datagramme festgelegt. Die Klasse kapselt den Zugriff auf den Datenstrom und bindet die Kommunikationsendpunkte über einen Bezeichner vom Typ ara::core::InstanceSpecifier an die konfigurierte Kommunikationsinfrastruktur an [SWS_RDS_90312]. Anwendungen nutzen diesen Consumer, um strukturierte AVTP- bzw. IEEE-1722-Nutzdatenströme direkt und ressourceneffizient entgegenzunehmen.
Lebenszyklus
Die Instanziierung eines Consumers erfolgt ausschließlich über die statische Fabrikmethode Create()[SWS_RDS_90312] unter Angabe der Zielinstanz. Ein direkter Konstruktoraufruf ist für Anwender nicht vorgesehen. Die Klasse implementiert eine strikte Move-Only-Semantik: Das Kopieren von Instanzen ist explizit untersagt, da sowohl der Kopierkonstruktor [SWS_RDS_90316] als auch der Kopierzuweisungsoperator [SWS_RDS_90317] gelöscht sind. Dies stellt sicher, dass die zugrunde liegende Verbindung und die Pufferressourcen stets in eindeutigem Besitz verbleiben.
Um Besitzübertragungen zwischen Kontexten zu ermöglichen, stellt die Klasse einen Move-Konstruktor [SWS_RDS_90314] sowie einen Move-Zuweisungsoperator [SWS_RDS_90315] bereit. Beide Move-Operationen sind als nicht threadsicher deklariert, weshalb nebenläufige Zugriffe auf dieselbe Instanz synchronisiert werden müssen. Beim Abbau der Instanz schließt der Destruktor ~IEEE1722RawDataStreamConsumer() eine eventuell noch bestehende Verbindung automatisch [SWS_RDS_90318]; auch der Destruktor ist als nicht threadsicher spezifiziert.
Nutzungspfad
Der typische Ablauf bei der Verwendung eines IEEE1722RawDataStreamConsumer umfasst vier aufeinanderfolgende Phasen:
Erzeugung: Die Anwendung erzeugt die Consumer-Instanz über die Fabrikmethode Create() mit dem gewünschten ara::core::InstanceSpecifier[SWS_RDS_90312].
Verbindungsaufbau: Vor dem Empfang von Nutzdaten verbindet die Anwendung den Consumer durch den Aufruf von Connect()[SWS_RDS_90319] mit dem konfigurierten Datenstrom.
Datenempfang: Die Anwendung ruft wiederholt oder zyklisch ReadData() auf [SWS_RDS_90321]. Dabei gibt der Parameter maxNumberOfDatagrams die maximale Anzahl der im Aufruf abzufragenden Datagramme an. Das Ergebnis wird als Vektor des Template-Typs T zurückgeliefert.
Verbindungsabbau: Nach Abschluss der Datenübertragung beendet die Anwendung die Verbindung explizit über Shutdown()[SWS_RDS_90320] oder überlässt die Bereinigung dem Destruktor [SWS_RDS_90318].
Sämtliche regulären Schnittstellenfunktionen der Klasse – Create()[SWS_RDS_90312], Connect()[SWS_RDS_90319], ReadData()[SWS_RDS_90321] und Shutdown()[SWS_RDS_90320] – sind mit noexcept qualifiziert und signalisieren Fehlerzustände nicht über C++-Ausnahmen, sondern über den Rückgabetyp ara::core::Result. Anwendungen müssen daher vor dem Zugriff auf Datenwerte oder vor Folgeoperationen prüfen, ob das jeweilige Ergebnis einen Wert oder einen Fehler enthält.
Mögliche Fehlerkonstellationen umfassen das Scheitern der Instanzerzeugung, falls die Konfiguration des InstanceSpecifier fehlerhaft ist, sowie Verbindungsabbrüche oder Fehler beim Netzwerkzugriff während Connect() oder ReadData(). Interpretation: Ein Aufruf von ReadData() dürfte voraussetzen, dass zuvor ein erfolgreicher Verbindungsaufbau mittels Connect() abgeschlossen wurde. Frage Q-ea5241fe8b3e95a8 (offen) Konkrete Fehlerursachen dürften idiomatisch als Fehlercodes im zurückgegebenen ara::core::Result transportiert werden.
Dieser Leitfaden wurde durch ein KI-System auf Basis der Spezifikation AUTOSAR Adaptive Platform Release R25-11 generiert.
gemini-3.8-flash-medium· 2026-10-13