struct <DataElement-Namespace>::<DataElementInterface>::<DataElement>ReadOutput
struct <DataElement>ReadOutput {...};
Structure wrapping the out arguments for a ReadOutput
| Header-Datei | #include "<DataElementDirectoryPath>/{<data-element-shortname-lower> }.h" |
|---|---|
| Forwarding-Header | #include "<DataElementDirectoryPath>/{<data-element-shortname-lower> }/<DataElementShortname>_fwd.h" |
| Scope | class <DataElement-Namespace>::<DataElementInterface> |
User GuideAI-GEGENEREERD
Kapselt de uitvoerargumenten van een leesoperatie voor een diagnose-data-element in.
Kapselt de uitvoerargumenten van een leesoperatie voor een diagnose-data-element in.
De structuur <DataElement>ReadOutput dient in de adaptieve diagnosemodule als transportcontainer voor het inkapselen van alle uitvoerargumenten van een leesoperatie van een data-element. Bij een inkomend leesverzoek wordt deze door de serviceprovider geïnstantieerd, gevuld met de vastgestelde waarden en geretourneerd aan de oproeper. De instanties bezitten zuivere waardesemantiek zonder eigen toestandsbeheer en worden vermoedelijk na de evaluatie onmiddellijk vernietigd. Vraag (open) Eventuele fouten tijdens de bevraging worden als interpretatie via de retourmechanismen van de bovenliggende platformfunctie afgehandeld en niet via de structuur zelf.
Context
De structuur <DataElement>ReadOutput is een onderdeel van de interfacedefinitie van de diagnosemodule (diag) binnen het AUTOSAR Adaptive Platform in release R25-11. Haar primaire rol bestaat erin om als wrapper-structuur de uitvoerargumenten (out arguments) van een leesoperatie (ReadOutput) voor een specifiek diagnose-data-element binnen de bijbehorende <DataElementInterface> samen te vatten. In de architectuur van AUTOSAR Adaptive communiceren functionele softwarecomponenten via duidelijk gedefinieerde service-interfaces met de platform-diagnosemanager. <DataElement>ReadOutput fungeert hierbij als zuivere datatransportcontainer die de payload van een leesopvraag bundelt. Vermoedelijk dient de datastructuur als retourtype van een asynchrone leesoperatie (zoals Read()) binnen de diagnose-interface <DataElementInterface> om uitvoerparameters gebundeld beschikbaar te stellen. Vraag Q-e3c1110153021b2a (open) Door deze inkapseling ontstaat een uniforme en getypeerde interface die afziet van pointeroverdrachten of afzonderlijke uitvoerparameters.
Levenscyclus
Wat betreft de levenscyclus vertoont de structuur <DataElement>ReadOutput de eigenschappen van een elementair waardetype. Ze bezit geen langlevende identiteit en doorloopt geen complexe interne toestanden. De aanmaak geschiedt dynamisch of op de stack door die component die de leestoegang tot het data-element implementeert en de uitvoergegevens samenstelt. De instanties van de structuur zullen typisch by-value of via move-semantiek worden overgedragen en door de aanroepende diagnosecomponent respectievelijk het platformframework na afronding van de leesoperatie worden geconsumeerd en vernietigd. Vraag Q-f7af8c361e9352b0 (open) De eigendomsoverdracht vindt daarbij direct aan de ontvanger van het leesresultaat plaats. Zodra de verwerkende routine de benodigde gegevens heeft uitgelezen, wordt de structuur bij het verlaten van de scope automatisch vrijgegeven. Met betrekking tot concurrency biedt <DataElement>ReadOutput geen interne synchronisatie. Aangezien de instanties in de reguliere aanroepstroom exclusief aan de desbetreffende oproeper worden overgedragen, is gedeeld gebruik over threadgrenzen heen in de standaardwerking niet voorzien.
Gebruikspad
Het typische gebruikspad strekt zich uit van het initiëren van een leesverzoek tot de verwerking van de geleverde uitvoerparameters. Een typisch verloop ziet er als volgt uit:
- Verzoek: Een diagnoseclient of het adaptieve framework verzoekt om het lezen van een data-element via de methode van de interface
<DataElementInterface>. - Instantiëring en vulling: De leverende softwarecomponent bepaalt de actuele diagnosegegevens, instantieert een instantie van
<DataElement>ReadOutputen vult de datavelden ervan met de geregistreerde waarden. - Teruggave: De gevulde structuur wordt als resultaat van de operatie verzonden naar het verzoekende framework.
- Consumptie: Het framework of de aanroepende component benadert de aanwezige uitvoerargumenten, formatteert het diagnoserespons en beëindigt de verwerking van de opvraag.
Na een succesvolle overdracht en extractie van de datavelden verliest de instantie haar geldigheid en wordt ze zonder verdere interactiestappen verworpen.
Foutscenario's
Interpretatie: Het mislukken van een leesoperatie wordt vermoedelijk niet via de structuur zelf weergegeven, maar via het omsluitende resultaat- of foutmechanisme van het platform (zoals ara::core::Result resp. ara::core::Future). Vraag Q-7d16241843f2d5e6 (open) Als zuivere datastructuur declareert <DataElement>ReadOutput geen eigen methoden, precondities of foutcodes. Mocht de leestoegang tot een data-element mislukken – bijvoorbeeld door ontoereikende bevoegdheden, ongeldige systeemtoestanden of communicatieproblemen met de onderliggende sensoriek –, dan signaleert de implementerende interface deze fout via het overkoepelende platformfoutkanaal. In een dergelijk foutgeval wordt er geen geldige instantie van <DataElement>ReadOutput voor evaluatie beschikbaar gesteld, waardoor verkeerde interpretaties van onvolledige gebruikersdata aan de aanroeperszijde worden voorkomen.
Deze handleiding is gebaseerd op de specificatiegegevens van de AUTOSAR-release R25-11 voor de Adaptive Platform.
gemini-3.8-flash-low· 2026-10-13 · Duits origineel