Stelt adaptieve applicaties in staat de DoIP-entiteitsidentificatie beschikbaar te stellen voor het diagnosebeheer.
DOOR AI GEGENEREERDongecontroleerdModel: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 73f8b2cf1d2eHerkomstOpen vragen (2)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
Stelt adaptieve applicaties in staat de DoIP-entiteitsidentificatie beschikbaar te stellen voor het diagnosebeheer.
De klasse ara::diag::DoIPEntityIdentification stelt adaptieve applicaties in staat de entiteitsidentificatie (EID) voor het DoIP-diagnoseprotocol dynamisch beschikbaar te stellen [SWS_DM_01361]. Na instantiëring activeert de applicatie het doorsturen met Offer() en beantwoordt zij query's van het Diagnostic Management via de zuiver virtuele methode GetEntityId() asynchroon met een future [SWS_DM_01366], [SWS_DM_01367]. Is de interface bij een query nog niet beschikbaar gesteld, dan verstuurt het diagnosebeheer ter vervanging een gestandaardiseerde 0xFF-waarde [SWS_DM_01528].
Context
De klasse ara::diag::DoIPEntityIdentification dient voor het dynamisch beschikbaar stellen van de entiteitsidentificatie (EID) voor het DoIP-protocol (Diagnostic over IP) [SWS_DM_01361]. In een AUTOSAR Adaptive-omgeving vormt zij de functionele brug tussen een individuele adaptieve applicatie en het Diagnostic Management (DM) AUTOSAR_AP_SWS_Diagnostics, p. 107. Is in de configuratie DoIpNetworkConfiguration.eidRetrieval ingesteld op de modus DoIpEidRetrievalEnum.eidUseApi, dan vraagt het Diagnostic Management de EID via deze software-interface aan [SWS_DM_01361]. De binding met de softwarearchitectuur vindt plaats via een ara::core::InstanceSpecifier, die verwijst naar een PortPrototype van een DiagnosticDoIPEntityIdentificationInterface[SWS_DM_01364].
Levenscyclus
Het aanmaken gebeurt via de expliciete constructor, waaraan naast de InstanceSpecifier de parameter ConcurrencyType (kConcurrent of kNotConcurrent) wordt meegegeven [SWS_DM_01364]. Deze laatste bepaalt of opvolgende aanroepen naar de interface thread-safe moeten worden afgehandeld [SWS_DM_01364], [SWS_DM_01366]. Na constructie blijft het object aanvankelijk in een inactieve toestand. Door het aanroepen van Offer() wordt de interface vrijgegeven voor het Diagnostic Management en wordt het doorsturen van verzoeken naar de handler geactiveerd [SWS_DM_01367]. Vóór de vernietiging van het object of bij beëindiging van het bedrijf blokkeert StopOffer() het doorsturen weer [SWS_DM_01368]. De vernietiging gebeurt uiteindelijk via de virtuele destructor [SWS_DM_01365]. Noch Offer(), StopOffer() noch de destructor zijn thread-safe en vereisen daarom gecoördineerde synchronisatie in de applicatiecode [SWS_DM_01365], [SWS_DM_01367], [SWS_DM_01368].
In het typische gebruiksscenario leidt de adaptieve applicatie een eigen implementatieklasse af van ara::diag::DoIPEntityIdentification en overschrijft zij de zuiver virtuele methode GetEntityId()[SWS_DM_01366]. Na instantiëring met een geldige identifier meldt de applicatie de handler aan via Offer()[SWS_DM_01367]. Zodra het Diagnostic Management voor het samenstellen van DoIP-berichten de entiteits-ID nodig heeft, roept het GetEntityId() aan [SWS_DM_01361], [SWS_DM_01366]. De methode levert een ara::core::Future<EntityId> op, waardoor de identificatiedata asynchroon kunnen worden bepaald en beschikbaar gesteld [SWS_DM_01366]. Eindigt de functionele werking, dan trekt de applicatie het aanbod via StopOffer() in [SWS_DM_01368].
Foutieve modelconfiguraties bij de constructie leiden tot specifieke runtime-overtredingen: kan de InstanceSpecifier in het model niet worden herleid of verwijst deze niet naar een PortPrototype, dan resulteert dit in een InstanceSpecifierMappingIntegrityViolation[SWS_DM_01364]. Verwijst de port-mapping niet naar een DiagnosticDoIPEntityIdentificationInterface, dan is er sprake van een PortInterfaceMappingViolation, terwijl een ontbrekende procesafstemming een ProcessMappingViolation activeert [SWS_DM_01364]. Wordt dezelfde identifier binnen het proces meermaals gebruikt, dan volgt een InstanceSpecifierAlreadyInUseViolation[SWS_DM_01364].
Als Offer() wordt aangeroepen terwijl de service al actief wordt aangeboden, retourneert de methode een ara::core::Result met de foutcode DiagOfferErrc::kAlreadyOffered[SWS_DM_01367]. Kan het Diagnostic Management de EID niet opvragen – bijvoorbeeld omdat de interface op het moment van de aanvraag nog niet werd aangeboden –, dan treedt een gedefinieerde protocol-fallback in werking: het Diagnostic Management verzendt in DoIP-berichten ter vervanging een 6-byte-EID-waarde van 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF[SWS_DM_01528].
Deze handleiding is gegenereerd door een AI-assistent op basis van de AUTOSAR Adaptive-specificatie R25-11.
InstanceSpeci- InstanceSpecifier either cannot be resolved in the model in the fierMappingIn- context of your executable, or it refers to a model element other tegrityViolation than a PortPrototype.
PortInterfaceMap- A PortPrototype that is referenced by a pingViolation DiagnosticDoIpEntityIdentificationPortMapping needs to be typed by a DiagnosticDoIPEntityIdentificationInterface. ProcessMappingVio- Matching InstanceRef exists, but no matching (modelled) Process lation found that matches the (runtime) process. InstanceSpecifier- Violation message that is sent in case a constructor in the ara AlreadyInUseViola- framework was called with an InstanceSpecifier already in use in tion this process.
Parameter (in)
Parameter
Beschreibung
specifier
InstanceSpecifier to a PortPrototype of a DiagnosticDoIPEntityIdentificationInterface.
concurrencyType
Specifies if the interface is implemented as thread safe ( kConcurrent) or non-thread safe (kNotConcurrent)..
Request a governed re-review of this record. The record is not changed immediately.
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: 60c723a50d6cHerkomstOpen vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
De methode Offer van de klasse ara::diag::DoIPEntityIdentification schakelt het doorsturen van binnenkomende DoIP-verzoeken door de Diagnostic Management Daemon (DM) naar de geregistreerde handler in ([SWS_DM_01367]). Pas na de succesvolle aanroep worden berichten doorgegeven aan de handler. Interpretatie: De aanroep vindt doorgaans plaats in de initialisatiefase van de Adaptive Application, voordat diagnoseberichten moeten worden ontvangen. Vraag Q-4b78d4f80bda63a4 (open)
Gebruik en semantiek:
Aanroepcontext: De operatie wordt synchroon uitgevoerd en is gedeclareerd als noexcept; zij werpt geen exceptions ([SWS_DM_01367]).
Retourwaarde: Zij levert een ara::core::Result<void> op, die bij succes geen waarde bevat ([SWS_DM_01367]).
Foutafhandeling:
Werd de interface voor de instantie al aangeboden, dan mislukt de aanroep en levert deze met rollback-semantiek de foutcode DiagOfferErrc::kAlreadyOffered op ([SWS_DM_01367]).
Gelijktijdigheid en beperkingen:
De interface is gespecificeerd als not thread-safe ([SWS_DM_01367]). Gelijktijdige aanroepen op dezelfde instantie moeten door de aanroepende applicatie worden gesynchroniseerd.
Samenspel:
Het registratiepatroon komt overeen met de handelswijze van andere DoIP-diensten zoals DoIPGroupIdentification ([SWS_DM_00725]) en DoIPPowerMode ([SWS_DM_00735]) evenals generieke UDS-handlers ([SWS_DM_00619]). De naamgeving volgt het uit ara::com bekende patroon, maar vormt een zelfstandige registratie bij de DM (AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”).
Deze tekst is door een AI gegenereerd op basis van de specificatie AUTOSAR 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: 2e0edce0b8e6HerkomstOpen vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel
Gebruik
De methode ara::diag::DoIPEntityIdentification::StopOffer beëindigt het aanbieden van de dienst voor DoIP-entiteitsidentificatie en deactiveert het doorsturen van verzoekberichten vanuit Diagnostic Management (DM) naar de applicatie [SWS_DM_01368]. De interface wordt beschikbaar gesteld via het headerbestand ara/diag/doip_entity_identification.h. Deze accepteert geen parameters en levert geen retourwaarde op (void) [SWS_DM_01368]. Interpretatie: Aangezien de signatuur noch een future-object noch een notificatie per callback voorziet, wordt de aanroep vermoedelijk synchroon blokkerend uitgevoerd totdat het doorsturen in de DM is beëindigd. Vraag Q-75f67df3a003b08f (open)
Foutafhandeling en uitzonderingsveiligheid
De operatie is gedeclareerd met de specificator noexcept en gespecificeerd als uitzonderingsveilig (exception safe) [SWS_DM_01368]. Er worden geen specifieke foutcodes geretourneerd en er worden geen uitzonderingen gegenereerd.
Gelijktijdigheid en beperkingen
Met betrekking tot de uitvoeringsomgeving is de methode geclassificeerd als niet thread-safe (not thread-safe) [SWS_DM_01368]. Vinden er parallelle aanroepen of toegangen tot dezelfde instantie van ara::diag::DoIPEntityIdentification plaats, dan moeten deze aan de applicatiezijde worden gesynchroniseerd.
Samenspel
Het gedrag past in het uniforme levenscycluspatroon van AUTOSAR Adaptive Diagnostic Management. Een vergelijkbare deactivering van het doorsturen van berichten vindt bijvoorbeeld plaats bij de groepsidentificatie via [SWS_DM_00726] evenals bij diagnoseschakelaars en monitors via [SWS_DM_01089]. Zoals in AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors” wordt benadrukt, baseert de naamgeving van Offer en StopOffer zich op de patronen van ara::com, maar vormt het een zelfstandige implementatie voor diagnose-interfaces.
Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de specificatie AUTOSAR Adaptive R25-11.
gemini-3.8-flash-low· 2026-10-13 · Duits origineel