Kapselt de payload van een positief UDS-antwoord in zonder service-identifier voor overdracht aan Diagnostic Management.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: e0f4adf446cbHerkomstOpen vragen (3)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
Kapselt de payload van een positief UDS-antwoord in zonder service-identifier voor overdracht aan Diagnostic Management.
De structuur ara::diag::GenericUDSService::OperationOutput dient in de module diag als uitvoerstructuur voor de payload van positieve UDS-antwoordberichten [SWS_DM_00632]. Een applicatie vult na succesvolle uitvoering van een generieke UDS-service de bytevariabele responseData en draagt de instantie over aan Diagnostic Management. Daarbij mag de UDS Service Identifier (SID) niet in responseData zijn opgenomen, aangezien deze automatisch door het platform wordt toegevoegd [SWS_DM_00632]. Voor foutscenario's en negatieve antwoorden is de structuur niet bedoeld.
Context
De datastructuur ara::diag::GenericUDSService::OperationOutput dient binnen het AUTOSAR Adaptive Platform in module diag als gestandaardiseerd uitvoerkanaal voor generieke UDS-services [SWS_DM_00632]. Zij is gedefinieerd in het headerbestand #include "ara/diag/generic_uds_service.h" en fungeert als inkapseling voor de payload van een succesvolle UDS-service-uitvoering [SWS_DM_00632]. De belangrijkste interactiepartners zijn de applicatiespecifieke implementatie van de generieke UDS-servicehandler en het bovenliggende Diagnostic Management van het platform AUTOSAR_AP_SWS_Diagnostics p. 80. Terwijl Diagnostic Management de coördinatie met de externe diagnosetester, de protocolvalidatie en het raamwerk verzorgt, stelt OperationOutput de geïsoleerde payload voor het positieve UDS-antwoordbericht beschikbaar [SWS_DM_00632].
Levenscyclus
Instanties van ara::diag::GenericUDSService::OperationOutput vertonen een sterk gefocuste en kortstondige levenscyclus. De structuur wordt door de servicetoepassing geïnstantieerd in de lokale context van een inkomend UDS-verzoek. Via de enige publieke lidvariabele responseData van het type ara::core::Vector<std::uint8_t> neemt de structuur het volledige eigendom van de payload-bytes over [SWS_DM_00632].
Interpretatie: de levensduur van OperationOutput is vluchtig en gebonden aan de duur van de desbetreffende verzoekverwerking; de instantie wordt vermoedelijk na het vullen via returnwaarde of verplaatsingssemantiek overgedragen aan Diagnostic Management en na serialisatie in het UDS-antwoordframe weer vernietigd. Vraag Q-c736182a9518978a (open) Omdat het een zuiver data transfer object (DTO) betreft zonder interne toestandslogica, bestaan er geen toestandsovergangen. Wat betreft gelijktijdigheid biedt OperationOutput geen inherente thread-safety; aangezien de instantiatie en het vullen echter per verzoek geïsoleerd binnen de verwerkingscontext plaatsvinden, is bij reguliere servicetoepassing geen externe synchronisatie vereist.
Gebruikspad
Het reguliere verloop bij de verwerking van een diagnoseverzoek is onderverdeeld in de volgende stappen:
Ontvangst: Diagnostic Management ontvangt een UDS-verzoek van een externe diagnosetester en stuurt dit door naar de overeenkomstige instantie van GenericUDSServiceAUTOSAR_AP_SWS_Diagnostics p. 81.
Service-uitvoering: de applicatie interpreteert de ontvangen parameters en voert de interne diagnosefunctie uit.
Resultaatbeschikbaarstelling: bij succesvolle verwerking instantieert de applicatie een object van het type OperationOutput en wijst aan het veld responseData de payload van het antwoord toe [SWS_DM_00632]. Hierbij schrijft de specificatie dwingend voor dat responseData uitsluitend de databytes zonder de service-identifier (SID) mag bevatten [SWS_DM_00632].
Overdracht: de applicatie draagt OperationOutput over aan Diagnostic Management. Interpretatie: de overdracht vindt typisch plaats als synchrone returnwaarde of ingebed in een asynchrone toekomstwaarde zoals ara::core::Future. Vraag Q-2dcf40060cca29a1 (open)
Berichtverzending: Diagnostic Management plaatst de positieve SID er automatisch voor, voltooit het UDS-telegram en verzendt het antwoord naar de diagnosetester.
Bij het gebruik van de structuur dient rekening te worden gehouden met essentiële randvoorwaarden en gedragspatronen in geval van fouten:
Uitsluiting van negatieve antwoorden: conform de specificatie vertegenwoordigt OperationOutput expliciet en uitsluitend de inhoud van positieve antwoordberichten [SWS_DM_00632]. Interpretatie: kan een serviceverzoek niet succesvol worden verwerkt (bijv. als gevolg van ontoelaatbare parameters of ongeldige voorwaarden), dan wordt vermoedelijk geen OperationOutput gegenereerd; in plaats daarvan signaleert de applicatie een Negative Response Code (NRC) aan Diagnostic Management. Vraag Q-09abb9092c1dc167 (open)
Foutieve SID-inclusie: wordt de service-identifier per abuis in responseData ingevoegd, dan ontstaat een onjuist geformatteerd UDS-telegram, aangezien Diagnostic Management de SID bij positieve antwoorden zelfstandig vooraf laat gaan [SWS_DM_00632].
Geheugenallocatie: aangezien responseData als dynamische vector (ara::core::Vector) is gedeclareerd, moet bij de toewijzing van zeer grote hoeveelheden payload rekening worden gehouden met mogelijke geheugenknelpunten [SWS_DM_00632].
Deze handleiding is gebaseerd op de specificatie AUTOSAR Adaptive Platform release R25-11 en is geautomatiseerd opgesteld.
UML-klassendiagram
Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.
gemini-3.8-flash-low· 2026-10-13 · Duits origineel