DEENESPTFRRUARHIKOZHNL

struct <SI-Namespace>::proxy::methods::<Method>::Output

[SWS_CM_99333] Upstream: RS_CM_00212, RS_CM_00213, RS_AP_00114, RS_AP_00120, RS_AP_00127, RS_AP_00128, RS_AP_00138

struct Output {...};

Structure wrapping the out arguments for a method

Header-Datei#include "<SiNamespaceDerivedDirectoryPath>/<SiShortname>_proxy.h"
Forwarding-Header#include "<SiNamespaceDerivedDirectoryPath>/<SiShortname>_proxy/<SiShortname>_proxy_fwd.h"
Scopeclass <SI-Namespace>::proxy::methods::<Method>

User GuideAI-GEGENEREERD

Kapselt als datastructuur de uitvoerparameters van een asynchroon aangeroepen servicemethode in voor de ontvangende proxy.
DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 8153a94079af Herkomst Open vragen (2)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Kapselt als datastructuur de uitvoerparameters van een asynchroon aangeroepen servicemethode in voor de ontvangende proxy.

De structuur <SI-Namespace>::proxy::methods::<Method>::Output kapselt de uitvoerargumenten van een proxyservicemethode van het AUTOSAR Adaptive Platform ([SWS_CM_99333]) in. De aanroeper ontvangt de structuur bij succes via een geretourneerde ara::core::Future na de afhandeling ervan via get() of GetResult() (AUTOSAR_AP_SWS_CommunicationManagement §8.3.6 “Struct: Output”). Als er tijdens de verwerking fouten optreden, wordt er geen Output-object gegenereerd, maar wordt in plaats daarvan een foutcode via de Future-context verstrekt. Door het Future-object te vernietigen, kan de client een lopende methodeaanroep voortijdig afbreken.

Context

De structuur <SI-Namespace>::proxy::methods::<Method>::Output dient binnen Communication Management (com) van het AUTOSAR Adaptive Platform als gestructureerde inkapseling voor de uitvoerargumenten van een servicemethode ([SWS_CM_99333]). Aan de zijde van de serviceconsument (proxy) wordt deze klasse getypeerd gegenereerd om de door de serviceprovider bepaalde en via de middleware overgedragen resultaatwaarden gebundeld aan de clienttoepassing over te dragen. Aan de zijde van de serviceprovider (skeleton) bestaat een corresponderende datastructuur voor het beschikbaar stellen van de methode-teruggave ([SWS_CM_99556]). Belangrijke interactiepartners zijn de aanroepende clienttoepassing, de proxy-methode-instantie en de door de aanroepinterface geretourneerde ara::core::Future, die bij succes het Output-object transporteert (AUTOSAR_AP_SWS_CommunicationManagement §8.3.6 “Struct: Output”).

Levenscyclus

De levenscyclus van een instantie van Output is direct ingebed in het asynchrone communicatiepatroon van het Adaptive Platform. Bij het uitvoeren van een methodeaanroep op de proxy genereert de runtime-omgeving een ara::core::Future, die fungeert als container voor het latere Output-object (AUTOSAR_AP_SWS_CommunicationManagement §8.3.6 “Struct: Output”). De eigenlijke resultaatgegevens worden aan de providerzijde gegenereerd: na voltooiing van de verwerking – hetzij synchroon in de body van de servicemethode of asynchroon in een afzonderlijke thread – worden de uitvoerparameters in de uitvoerstructuur geplaatst en via een Promise aan de bijbehorende Future overgedragen (ARAComAPI §6.19 “Returning Future with already set result”).

Zodra het resultaat beschikbaar is, extraheert de client de Output-instantie via get() of GetResult(). Daarbij gaat het object over in het bezit van de aanroeper; de verdere levensduur ligt vanaf dat moment vermoedelijk bij de aanroepende applicatiecode. Vraag Q-27f51b3c9fb838ed (open) Een relevante randvoorwaarde voor de levenscyclus betreft het voortijdig afbreken: de destructor van het geretourneerde ara::core::Future-object dient ertoe dat de aanroeper het verzoek na het verzenden kan afbreken ([SWS_CM_00194]). Als de Future voortijdig wordt vernietigd, leidt dit tot het afbreken van de aanroep, zodat er geen aflevering van de Output-structuur plaatsvindt.

Gebruikspad

Het typische verloop voor het in ontvangst nemen van de methode-uitvoerparameters omvat de volgende stappen:

Aanroep van een proxy-methode en opvragen van de Output-structuurClientProxyMethodFuture<Output>Methodenaufruf()ara::core::Future<Output>get() / GetResult()altErfolgreichOutputFehler aufgetretenara::core::ErrorCode

Sequentiediagram: Aanroep van een proxymethode en overname van de outputstructuur via de Future. Bronnen: [SWS_CM_99333], AUTOSAR_AP_SWS_CommunicationManagement §8.3.6 “Struct: Output”, ARAComAPI §6.19 “Returning Future with already set result”.

Foutscenario's

Als er bij de verwerking van de methode een fout optreedt, wordt er geen regulier Output-object geretourneerd. Communication Management handelt dit af via specifieke foutmechanismen:

  • Gecontroleerde applicatiefouten (checked errors): Als er tijdens de verwerking van de methodeaanroep een gedefinieerde fout optreedt, wordt de bijbehorende ara::core::ErrorCode geleverd in de context van de get()- resp. GetResult()-aanroep ([SWS_CM_10371]).
  • Infrastructuur- en overdrachtsfouten: Als de aanroep mislukt, bevat de ara::core::Future een bijbehorende foutcode zoals ara::core::FutureErrc (AUTOSAR_AP_SWS_CommunicationManagement §8.3.6 “Struct: Output”) resp. aan de providerzijde ara::com::ComErrc (AUTOSAR_AP_SWS_CommunicationManagement §8.4 “Methods”).
  • Fire-and-forget-methoden: Voor methoden zonder retourwaarden (fire and forget) worden geen gecontroleerde fouten teruggemeld ([SWS_CM_90436]); voor dergelijke methoden bestaat er geen Output-structuur.
  • Aanroepafbreking: Het vernietigen van het Future-object breekt het lopende verzoek af en voorkomt het beschikbaar stellen van een Output-resultaat ([SWS_CM_00194]).

Deze handleiding is uitsluitend gebaseerd op de specificaties van de Adaptive-release R25-11.