Dient als generieke interface voor het aan toepassingszijde lezen en schrijven van SOVD-diagnosedata.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: e0fb00ce3377HerkomstOpen vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
Dient als generieke interface voor het aan toepassingszijde lezen en schrijven van SOVD-diagnosedata.
De klasse ara::diag::GenericDiagnosticSovdContent stelt een generieke interface beschikbaar voor adaptieve toepassingen om SOVD-resources in het AUTOSAR-systeem te koppelen [SWS_DM_02186]. Na instantiëring activeert de toepassing de ontvangst van diagnoseverzoeken via Offer(), waarna het Diagnostic Management binnenkomende lees- en schrijftoegangen asynchroon doorstuurt naar Read() en Write()[SWS_DM_02193]. Voorafgaand aan het afsluiten moet de beschikbaarstelling middels StopOffer() worden gedeactiveerd, terwijl lopende toegangen rekening moeten houden met de doorgegeven afbreek-handler.
Context
De klasse ara::diag::GenericDiagnosticSovdContent levert de generieke programmeerinterface waarmee adaptieve toepassingen dataresources voor servicegeoriënteerde voertuigdiagnose (SOVD) conform ASAM SOVD aanbieden en verwerken [SWS_DM_02186]. In een typisch diagnosescenario zijn drie essentiële componenten betrokken: de externe SOVD-client, het Diagnostic Management (DM) en de toepassingsspecifieke handler van de adaptieve toepassing.
SOVD-data worden gestructureerd via DiagnosticSovdContent, dat bestaat uit een of meer elementen van het type DiagnosticSovdContentElementSWS Diagnostics §7.3.3.3 “Definition of SOVD data”. De DM valt terug op de interface ara::diag::GenericDiagnosticSovdContent om lees- of schrijfverzoeken voor de volledige inhoud uit te voeren en daarbij de voorgeschreven dataconversieregels toe te passen SWS Diagnostics §7.3.3.3 “Definition of SOVD data”.
Contextdiagram: inbedding van GenericDiagnosticSovdContent tussen externe SOVD-client, Diagnostic Management en applicatiespecifieke handler. Bronnen: [SWS_DM_01431], [SWS_DM_01432], [SWS_DM_02186].
Levenscyclus
De instantiëring vindt plaats via de constructor onder opgave van een ara::core::InstanceSpecifier, die verwijst naar een PortPrototype van een DiagnosticDataIdentifierGenericInterface, en een gelijktijdigheidsmodus van het type SovdContentConcurrencyType[SWS_DM_02187]. De klasse is ontworpen als thread-safe en exception-safe [SWS_DM_02187].
Move-constructor en move-toewijzingsoperator zijn gedefinieerd met beschermde zichtbaarheid (protected) [SWS_DM_02189], [SWS_DM_02190]. Interpretatie: de protected declaratie duidt erop dat instanties worden geïmplementeerd als afgeleide klassenhiërarchieën en dat direct verplaatsen van buitenaf moet worden voorkomen. Vraag Q-57d60744ffc54899 (open) Voor het vrijgeven bestaat een virtuele destructor [SWS_DM_02188].
Na constructie bevindt de instantie zich in de toestand van niet-aanbieden. Pas door het aanroepen van Offer() wordt het DM geautoriseerd om binnenkomende diagnoseverzoeken door te sturen naar de instantie [SWS_DM_02193]. Voor het afsluiten of bij het beëindigen van de service wordt het doorsturen via StopOffer() weer ingetrokken [SWS_DM_02194].
Gebruikspad
Het reguliere verloop omvat het vrijgeven van de service, de ontvangst van asynchrone verzoeken en de uiteindelijke afmelding:
De applicatie instantieert haar implementatie van GenericDiagnosticSovdContent en registreert zich via Offer() bij het DM [SWS_DM_02193].
Ontvangt het DM een leesverzoek van de client („Read a data resource from an Entity”), dan roept het de methode Read() aan [SWS_DM_01432], [SWS_DM_02191]. De methode retourneert een ara::core::Future<DiagnosticSovdContentData>, die ofwel de abstracte inhoudsgegevens ofwel een SOVD-fout oplevert [SWS_DM_02191]. Uit deze gegevens vormt het DM het SOVD-antwoord [SWS_DM_01432], [SWS_DM_02164], [SWS_DM_02165].
Ontvangt het DM een schrijfverzoek („Write a data resource from an Entity”), dan delegeert het dit via Write() naar de handler [SWS_DM_01431], [SWS_DM_02166], [SWS_DM_02192]. De gegevens blijven geldig totdat het bijbehorende promise is vervuld of de bewerking wordt afgebroken [SWS_DM_02192].
Voor het beëindigen van de afhandeling roept de applicatie StopOffer() aan [SWS_DM_02194].
Sequentiediagram: verloop van serviceregistratie, asynchrone leesaanvraag en servicebeëindiging. Bronnen: [SWS_DM_01432], [SWS_DM_02191], [SWS_DM_02193], [SWS_DM_02194].
Foutscenario's
Wordt Offer() aangeroepen terwijl de service al wordt aangeboden, dan mislukt de operatie met de foutcode DiagOfferErrc::kAlreadyOffered[SWS_DM_02193].
Treden er bij het ophalen van gegevens in Read() of bij het schrijven in Write() applicatiespecifieke fouten op, dan wordt de geretourneerde ara::core::Future vervuld met een overeenkomstige SOVD-fout [SWS_DM_02191], [SWS_DM_02192], waarna het DM een negatief SOVD-antwoord verstuurt naar de client.
Daarnaast wordt aan beide aanroepen een ara::diag::CancellationHandler meegegeven, die signaleert of de bewerking voortijdig wordt afgebroken [SWS_DM_02191], [SWS_DM_02192]. Deze handler mag na de levensduur van de bewerking noch worden opgeslagen noch worden aangeroepen [SWS_DM_02191], [SWS_DM_02192].
Deze handleiding is uitsluitend gebaseerd op de gegevens in de specificatie AUTOSAR Adaptive Platform release R25-11.
This Offer will enable the DM to forward request messages to this handler.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 5a32b6fc61beHerkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
Gebruik
De methode ara::diag::GenericDiagnosticSovdContent::Offer activeert Diagnostic Management (DM) om binnenkomende verzoekberichten (request messages) door te sturen naar de handler-instantie [SWS_DM_02193]. De aanroep geschiedt synchroon, accepteert geen parameters en signaleert het resultaat via het retourtype ara::core::Result<void>[SWS_DM_02193]. Een positief resultaat bevestigt de succesvolle registratie van de service bij de DM [SWS_DM_02193].
Foutafhandeling
Mislukt de registratie, dan levert de methode een ara::core::Result met een foutcode terug [SWS_DM_02193]:
DiagOfferErrc::kAlreadyOffered: Treedt op wanneer de service al eerder is aangeboden; hierbij treedt de rollback-semantiek in werking [SWS_DM_02193]. Deze foutcode correspondeert met de algemene diagnosestatus kAlreadyOffered in DiagErrc[SWS_DM_00514] en DiagReportingErrc[SWS_DM_00560].
Gelijktijdigheid en beperkingen
De functie is als noexcept en exception safe gespecificeerd [SWS_DM_02193]. Bovendien is zij expliciet ingedeeld als thread-safe[SWS_DM_02193]. Dit onderscheidt GenericDiagnosticSovdContent::Offer in belangrijke mate van de meeste andere Offer-methoden van de DM zoals GenericRoutine::Offer[SWS_DM_00557], GenericUDSService::Offer[SWS_DM_00619] of CommunicationControl::Offer[SWS_DM_00809], die telkens als not thread-safe zijn gedeclareerd.
Samenspel
De beschikbaarstelling via Offer is de noodzakelijke voorwaarde opdat de DM verzoeken kan doorsturen naar de applicatie [SWS_DM_02193]. Zolang de beschikbaarstelling niet heeft plaatsgevonden, kan de DM geen verzoeken aan de interface afhandelen, wat overeenkomt met het algemene beschikbaarstellingsprincipe in het AUTOSAR-diagnosemanagement [SWS_DM_01525], [SWS_DM_01527]. De naamgeving volgt het gevestigde patroon in de DM, dat analoog aan de monitorservices is gekozen AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”.
Deze gebruiksinstructie is gebaseerd op de specificatie AUTOSAR Adaptive Platform Release R25-11.
Called for "Read Single Data Value request" for the specified SOVD Content.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: e27f0077c84cHerkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
Gebruik en aanroepsemantiek
De zuiver virtuele methode Read van de klasse ara::diag::GenericDiagnosticSovdContent dient voor de verwerking van verzoeken van het type “Read Single Data Value” voor de gespecificeerde SOVD-inhoud [SWS_DM_02191]. Bij de aanroep door de Diagnostic Manager worden de content-identifier sovd_content_name, contextgerelateerde diagnose-informatie via meta_info en een cancellation_handler meegegeven [SWS_DM_02191]. Via de cancellation_handler kan de applicatie controleren of het lopende verzoek is geannuleerd; deze instantie mag niet voorbij de levensduur van de bewerking worden opgeslagen of gerefereerd [SWS_DM_02191]. De beschikbaarstelling van de gegevens geschiedt asynchroon via de retourwaarde ara::core::Future<DiagnosticSovdContentData>, welke in het geval van succes de abstracte SOVD-contentgegevens inkapselt [SWS_DM_02191].
Foutafhandeling
De methode is als noexcept en exception safe gespecificeerd, zodat optredende fouten niet via C++-exceptions mogen worden gemeld [SWS_DM_02191]. In plaats daarvan wordt in geval van een fout een passende SOVD Error via de ara::core::Future geretourneerd, die in een negatief antwoordbericht wordt vertaald [SWS_DM_02191]. Indien de interface door de applicatie nog niet of niet meer middels offer() beschikbaar wordt gesteld, beantwoordt de Diagnostic Manager binnenkomende serviceverzoeken met de negatieve responscode NRC 0x94 (ResourceTemporarilyNotAvailable) [SWS_DM_01257].
Gelijktijdigheid en wisselwerking
De interfacefunctie is als thread-safe gedefinieerd [SWS_DM_02191]. Of lees- en schrijfacties gelijktijdig door de Diagnostic Manager mogen worden aangeroepen, wordt vastgelegd via de configuratievariabele readWrite in de structuur ara::diag::SovdContentConcurrencyType[SWS_DM_02185]. Alleen wanneer deze op kConcurrent is ingesteld, vinden aanroepen van Read en Write gelijktijdig plaats, terwijl de standaardwaarde kNotConcurrent gelijktijdige toegang uitsluit [SWS_DM_02185].
Deze tekst is gegenereerd door een AI op basis van de AUTOSAR-specificatie R25-11.
This StopOffer will disable the forwarding of request messages from DM.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: a2e6fc88edb0HerkomstOpen vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
De methode ara::diag::GenericDiagnosticSovdContent::StopOffer beëindigt de beschikbaarstelling van de diagnose-inhoud ten opzichte van Diagnostic Management (DM) en onderbindt vanaf de aanroep het doorsturen van binnenkomende verzoekberichten [SWS_DM_02194]. De functie vereist het headerbestand ara/diag/generic_diagnostic_sovd_content.h, verwacht geen parameters en levert geen retourwaarde op [SWS_DM_02194].
Wat betreft de foutafhandeling is de bewerking gedeclareerd als noexcept en geldt zij als volledig uitzonderingsveilig (exception safe) [SWS_DM_02194]. Er worden noch foutcodes noch retourstatussen overgedragen; een mislukken van de aanroep is niet voorzien in het API-ontwerp.
Op het gebied van concurrency onderscheidt de methode zich doordat zij expliciet als thread-safe (thread-safe) gespecificeerd is [SWS_DM_02194]. Dit vormt een wezenlijke bijzonderheid in vergelijking met vele andere diagnose-interfaces, waarbij StopOffer als niet thread-safe gedefinieerd is, zoals bijvoorbeeld bij GenericUDSService[SWS_DM_00620], GenericRoutine[SWS_DM_00558] of CommunicationControl[SWS_DM_00810].
Het naamgevings- en gedragsschema volgt het algemene AUTOSAR-patroon voor Offer- en StopOffer-mechanismen ter regulering van de berichtenstroom tussen DM en applicatie-handlers AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”. Interpretatie: De aanroep zal vermoedelijk typisch plaatsvinden vóór het vernietigen van het handler-object of bij tijdelijke onbeschikbaarheid van de SOVD-service, om zwevende verzoeken betrouwbaar te voorkomen. Vraag Q-5a2db04b82fed06b (open)
Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de specificatie AUTOSAR Adaptive R25-11.
Called for "Write a Data Value" request for the specified SOVD Content.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 545b938dce05Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
De methode [SWS_DM_02192] van de klasse ara::diag::GenericDiagnosticSovdContent wordt aangeroepen door Diagnostic Management (DM) zodra via ASAM SOVD de methode “Write a data resource” voor een diagnostisch element wordt ontvangen [SWS_DM_02166]. De beschikbaarstelling van deze schrijfbewerking is optioneel en veronderstelt de aanwezigheid van de configuratie DiagnosticSovdData.DiagnosticSovdMethod.put[SWS_DM_01431].
Bij de aanroep geeft de DM de volgende parameters mee [SWS_DM_02192]:
sovd_content_name: Naam van de geadresseerde SOVD-inhoud.
sovd_abstract_content_data: De abstracte payload (DiagnosticSovdContentData), samengesteld uit elementnaam en geconverteerde waarde [SWS_DM_02166]. Deze gegevens blijven geldig totdat de promise is vervuld of de verwerking via de cancellation-handler is geannuleerd.
meta_info: Aanvullende meta-informatie over de context van het verzoek.
cancellation_handler: Dient voor het detecteren van een annulering van de lopende bewerking en mag niet voorbij de levensduur van de functie worden opgeslagen of gerefereerd.
De functie is gespecificeerd als noexcept, geldt als uitzonderingsveilig en geeft een ara::core::Future<void> terug, die bij succes void dan wel bij een negatieve terugmelding een SOVD-fout transporteert [SWS_DM_02192]. De methode is gedeclareerd als thread-safe [SWS_DM_02192]; of de DM lees- en schrijfmethode gelijktijdig mag uitvoeren, regelt de parameter readWrite in ara::diag::SovdContentConcurrencyType[SWS_DM_02185].
Deze tekst is gegenereerd door een AI op basis van de AUTOSAR-specificatie R25-11.
gemini-3.8-flash-low· 2026-10-13 · Duits origineel