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.
Object for reading and writing binary data streams over a network connection.
Header-Datei
#include "ara/rds/raw_data_stream.h"
Scope
namespace ara::rds
User GuideAI-GEGENEREERD
Maakt het verzenden en ontvangen van binaire datastromen mogelijk via een netwerkverbinding op gemodelleerde poorten.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: effb63ab8311HerkomstOpen vragen (3)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
Maakt het verzenden en ontvangen van binaire datastromen mogelijk via een netwerkverbinding op gemodelleerde poorten.
De klasse ara::rds::RawDataStreamClient dient voor het lezen en schrijven van binaire datastromen via een netwerkverbinding op het AUTOSAR Adaptive Platform AUTOSAR_AP_SWS_RawDataStream p. 1. Instanties worden aangemaakt via de statische factory-methode Create, waarna de verbinding met Connect wordt opgebouwd, gegevens via ReadData en WriteData worden uitgewisseld en de sessie via Shutdown wordt beëindigd [SWS_RDS_10482]. Omdat het een niet-kopieerbaar en uitsluitend verplaatsbaar type betreft, is het object niet thread-veilig, waardoor gelijktijdige aanroepen aan applicatiezijde moeten worden gesynchroniseerd.
Context
De klasse ara::rds::RawDataStreamClient dient als eindpunt voor het verzenden en ontvangen van binaire datastromen via een netwerkverbinding volgens de specificatie AUTOSAR_AP_SWS_RawDataStream p. 1. Deze kapselt de communicatieverbinding van een gemodelleerde poort in, die tijdens runtime wordt geïdentificeerd en geïnstantieerd via een ara::core::InstanceSpecifier[SWS_RDS_10482]. Applicatiesoftware gebruikt de interface om ongestructureerde hoeveelheden payload bidirectioneel over te dragen, zonder gebruik te hoeven maken van op berichten gebaseerde service-interfaces. De klasse fungeert hierbij als client die actief een verbinding met een tegenpartij over het netwerk opbouwt en bestuurt.
Levenscyclus
Het aanmaken van een instantie gebeurt uitsluitend via de statische factory-methode Create[SWS_RDS_10482]. Deze methode is thread-veilig en levert bij succes de operationele clientinstantie op binnen een ara::core::Result. Wat eigendomsverhoudingen betreft, is ara::rds::RawDataStreamClient ontworpen als move-only type: de copy constructor [SWS_RDS_11303] en de copy assignment operator [SWS_RDS_11304] zijn expliciet verwijderd (=delete). Een overdracht van de resource is uitsluitend mogelijk via move-semantiek met behulp van de move constructor [SWS_RDS_11305] of move assignment [SWS_RDS_11306]. Deze move-operaties zijn gespecificeerd als niet thread-veilig.
In de levenscyclus doorloopt het object verschillende fasen: na succesvolle instantiatie bevindt de verbinding zich in de verbroken toestand. Door het aanroepen van Connect zonder parameters [SWS_RDS_10484] of met een configureerbare tijdsduur [SWS_RDS_11307] wordt de netwerkverbinding tot stand gebracht en naar de actieve toestand overgebracht. Het beëindigen van de verbinding kan expliciet worden bewerkstelligd via Shutdown, waardoor de datastroom wordt gesloten [SWS_RDS_10485]. Wanneer de instantie wordt vernietigd, garandeert de destructor ~RawDataStreamClient het automatisch sluiten en afsluiten van een nog openstaande verbinding [SWS_RDS_10483]. Noch de instantiemethoden, noch de destructor zijn thread-veilig; toegang tot dezelfde instantie vanuit verschillende threads vereist daarom externe synchronisatie.
Het typische gebruik is onderverdeeld in de fasen initialisatie, verbindingsopbouw, payload-overdracht en verbindingsafbraak:
Initialisatie: de applicatie instantieert de client via Create met de gewenste ara::core::InstanceSpecifier[SWS_RDS_10482].
Verbindingsopbouw: vervolgens brengt de aanroep van Connect[SWS_RDS_10484] resp. Connect met time-out [SWS_RDS_11307] de netwerkverbinding met de tegenpartij tot stand.
Gegevensoverdracht: in de verbonden toestand vindt de gegevensuitwisseling bidirectioneel plaats. Voor het verzenden van gegevens wordt WriteData aangeroepen, waarbij de gegevens worden overgedragen als std::unique_ptr<ara::core::Byte[]> samen met de lengte-indicatie [SWS_RDS_10487], optioneel met time-out [SWS_RDS_11310]. Voor het ontvangen dient ReadData onder vermelding van de maximaal te lezen buffergrootte [SWS_RDS_10486], naar keuze eveneens met time-out [SWS_RDS_11309]. Vermoedelijk vereist het uitvoeren van lees- en schrijfbewerkingen een vooraf succesvol tot stand gebrachte verbinding. Vraag (open)
Verbindingsafbraak: na voltooiing van de gegevensuitwisseling wordt de verbinding met Shutdown ordentelijk beëindigd [SWS_RDS_10485].
Alle methoden van ara::rds::RawDataStreamClient gebruiken voor fout- en succesmeldingen het standaardtype ara::core::Result en zijn gedeclareerd met noexcept, waardoor er geen C++-uitzonderingen worden gegenereerd. Bij de verbindingsopbouw via Connect wordt in geval van een fout een foutcode van het type RdsErrc geretourneerd [SWS_RDS_10484]. Bij de varianten met tijdslimiet – Connect[SWS_RDS_11307], ReadData[SWS_RDS_11309] en WriteData[SWS_RDS_11310] – leidt het verstrijken van de opgegeven tijdsduur (std::chrono::milliseconds) vermoedelijk tot een overeenkomstige time-outfout in het Result-object. Vraag Q-0ee603533c355c45 (open) Evenzo zal een aanroep van lees- of schrijfmethoden zonder actieve verbinding vermoedelijk mislukken en een foutcode uit RdsErrc melden. Aanroepers moeten daarom de retourwaarde van elke aanroep controleren op succes voordat volgende bewerkingen worden uitgevoerd.
Deze klassehandleiding vat de kernaspecten van ara::rds::RawDataStreamClient samen op basis van de specificatie AUTOSAR Adaptive Platform R25-11.
gemini-3.8-flash-low· 2026-10-13 · Duits origineel