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.
Dient voor de representatie van IEEE 1722-audiodatagrammen met beschermde header-velden en een virtuele destructor.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 57a5a8ff765cHerkomstOpen vragen (3)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
Dient voor de representatie van IEEE 1722-audiodatagrammen met beschermde header-velden en een virtuele destructor.
De klasse dient in de module Raw Data Stream voor de gestructureerde representatie van audiodatagrammen conform IEEE 1722 AVTP Audio Format AUTOSAR_AP_SWS_RawDataStream p. 1. Zij kapselt protocolspecifieke header-gegevens zoals formaat, aantal kanalen en bitdiepte in beschermde attributen in, die typisch worden geïnitialiseerd en geëvalueerd door afgeleide datastroomklassen. Een virtuele destructor waarborgt dat gespecialiseerde datagram-objecten via basisklasse-pointers uitzonderingsveilig en polymorf kunnen worden vrijgegeven [SWS_RDS_90273]. Aangezien er geen interne synchronisatie bestaat, moeten concurrente toegangen worden gecoördineerd door de toepassende streaming-architectuur.
Context
De klasse ara::rds::IEEE1722DatagramAAF biedt in de module Raw Data Stream (rds) van het AUTOSAR Adaptive Platform de datatechnische afbeelding van een IEEE 1722-datagram voor het AVTP Audio Format (AAF) AUTOSAR_AP_SWS_RawDataStream p. 1. De standaard IEEE 1722 (Audio Video Transport Protocol, AVTP) dient voor de tijdsynchrone overdracht van tijdkritische audio- en videodatastromen via Ethernet-netwerken in automobielomgevingen. Het header-bestand ara/rds/raw_data_stream_IEEE1722.h declareert de structuur binnen de namespace ara::rds.
De klasse is verantwoordelijk voor het inkapselen van de protocolspecifieke besturings- en metadatavelden van een AAF-dataframe. Hiertoe behoort het verplichte formaatveld format[SWS_RDS_90262] evenals gegevens over het aantal datastromen per frame via streams_per_frame[SWS_RDS_90263] respectievelijk sp[SWS_RDS_90269]. Voor het flexibel afbeelden van verschillende audioformaten en AES3-specificaties bevat de klasse optionele attributen voor bemonsteringsfrequenties en framerates zoals nsr[SWS_RDS_90268] en nfr[SWS_RDS_90265], gebeurtenis-identifiers evt[SWS_RDS_90264], kanaalinformatie channels_per_frame[SWS_RDS_90267], bitdieptes bit_depth[SWS_RDS_90266] evenals AES3-gegevenstype- en referentievelden aes3_data_type_h[SWS_RDS_90270], aes3_data_type_l[SWS_RDS_90271] en aes3_dt_ref[SWS_RDS_90272].
Aangezien alle datavelden in het beschermde bereik (protected) zijn gedefinieerd en er geen openbare toegangsmethoden worden gedeclareerd, dient de klasse vermoedelijk primair als overervingsbasis voor concrete, module-intern gespecialiseerde datagramtypen en drivers. Vraag Q-f24c82b5fa9fbaaa (open) Interactiepartners zijn de verwerkende componenten van het RDS-subsysteem, die ruwe datastromen uit het netwerk ontvangen, parsen of voorbereiden voor verzending.
Levenscyclus
Objecten van ara::rds::IEEE1722DatagramAAF worden tijdens runtime typisch aangemaakt in het kader van de streaming-pipeline zodra een nieuw audio-dataframe via Ethernet wordt ontvangen of wordt samengesteld voor verzending. Het beheer en de allocatie berusten bij het overkoepelende datastroombeheer van de RDS-module of een gespecialiseerde afgeleide klasse.
Voor de gecontroleerde vernietiging declareert de klasse een virtuele destructor ~IEEE1722DatagramAAF() noexcept[SWS_RDS_90273]. De virtuele declaratie zorgt ervoor dat afgeleide klassen bij vrijgave via basisklasse-pointers volledig en foutloos worden opgeruimd, zonder dat er resourcelekken ontstaan. Door de specificatie noexcept wordt gegarandeerd dat bij de objectontbinding geen excepties worden gegenereerd, wat met name bij stack unwinding in geval van een fout essentieel is.
Met betrekking tot concurrency biedt ara::rds::IEEE1722DatagramAAF geen eigen interne synchronisatie. Aangezien audio-streamingverwerkingen vaak worden uitgevoerd op afzonderlijke real-time-threads, moeten gelijktijdige lees- en schrijftoegangen worden gecoördineerd door externe synchronisatiemechanismen van de aanroepende architectuur.
Gebruikspad
Het typische gebruik van de klasse vindt plaats via een gespecialiseerde afleiding, die de beschermde attributen toegankelijk maakt voor de verwerking van payload-gegevens. Een representatief gebruikspad omvat vier opeenvolgende fasen:
Instantiatie: De toepassende component of de audiodriver instantieert een gespecialiseerd datagram-object, waardoor de basisklasse IEEE1722DatagramAAF wordt aangemaakt.
Header-initialisatie: De beschermde attributen worden ingevuld conform de specificatie van de datastroom. Het formaat format[SWS_RDS_90262] wordt vastgelegd, en attributen zoals channels_per_frame[SWS_RDS_90267] evenals bit_depth[SWS_RDS_90266] worden als ara::core::Optional van waarden voorzien. Indien er sprake is van een AES3-formaat, worden ook aes3_data_type_h[SWS_RDS_90270], aes3_data_type_l[SWS_RDS_90271] en aes3_dt_ref[SWS_RDS_90272] geïnitialiseerd.
Verwerking van de audiopayload: De audiodatastroom wordt verzonden of gedecodeerd met inachtneming van de geconfigureerde header-parameters.
Objectvernietiging: Na voltooiing van het streamingproces of na verwerking van het pakket wordt het object polymorf vrijgegeven via de virtuele destructor ~IEEE1722DatagramAAF()[SWS_RDS_90273].
In het kader van foutafhandeling en interfaceveiligheid zijn met name twee aspecten doorslaggevend:
Enerzijds vereist de inkapseling van optionele header-velden in ara::core::Optional (bijvoorbeeld bij evt[SWS_RDS_90264], nfr[SWS_RDS_90265] of sp[SWS_RDS_90269]) een expliciete controle op de aanwezigheid vóór leestoegang. Directe toegang tot niet-ingestelde optionele waarden leidt tot programmeerfouten of runtimefouten. Consumerende softwaremodules moeten daarom vóór de evaluatie altijd controleren of het desbetreffende veld geldig is ingesteld voor de huidige datastroom.
Anderzijds zorgt de specificatie van de destructor als noexcept ervoor dat tijdens het opruimen geen excepties kunnen ontsnappen [SWS_RDS_90273]. Mochten er bij het vrijgeven van interne of afgeleide resources fouten optreden, dan moeten deze dwingend lokaal binnen de destructor worden opgevangen om te voorkomen dat het proces door de C++-runtime-omgeving wordt beëindigd.
Deze handleiding is gegenereerd door een AI op basis van de specificatiedocumenten van AUTOSAR Adaptive R25-11.
gemini-3.8-flash-low· 2026-10-13 · Duits origineel