DEENESPTFRRUARHIKOZHNL

klasse ara::diag::DoIPEntityIdentification

[SWS_DM_01362] Upstream: RS_Diag_00026

class DoIPEntityIdentification {...};

DoIPEntityIdentification class to obtain the EID if required.

Header-Datei#include "ara/diag/doip_entity_identification.h"
Forwarding-Header#include "ara/diag/diag_fwd.h"
Scopenamespace ara::diag

User GuideAI-GEGENEREERD

Stelt adaptieve applicaties in staat de DoIP-entiteitsidentificatie beschikbaar te stellen voor het diagnosebeheer.
DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 73f8b2cf1d2e Herkomst Open 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].

DoIPEntityIdentificationStates NichtBereitgestellt NichtBereitgestellt Bereitgestellt Bereitgestellt NichtBereitgestellt->Bereitgestellt Offer() Bereitgestellt->NichtBereitgestellt StopOffer() Bereitgestellt->Bereitgestellt GetEntityId()

Toestandsdiagram: levenscyclus en registratiefasen van de DoIP-entiteitsidentificatie. Bronnen: [SWS_DM_01364], [SWS_DM_01365], [SWS_DM_01367], [SWS_DM_01368].

Gebruikspad

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].

Verloop van de DoIP-Entity-ID-beschikbaarstellingAnwendungDoIPEntityIdentificationDiagnostic ManagementDoIPEntityIdentification(specifier, concurrencyType)Offer()ara::core::Result<void>Use Case: EID-opvraag in het DoIP-protocolGetEntityId()GetEntityId()ara::core::Future<EntityId>Use Case: DienstbeendigungStopOffer()

Sequentiediagram: typische aanroepvolgorde voor registratie en query van de EID door het Diagnostic Management. Bronnen: [SWS_DM_01361], [SWS_DM_01364], [SWS_DM_01366], [SWS_DM_01367], [SWS_DM_01368].

Foutscenario's

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.

Ledenkaart

Klassendiagram

Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.

G nara__diag__DoIPEntityIdentification87 DoIPEntityIdentification + ~DoIPEntityIdentification() + DoIPEntityIdentification() + GetEntityId() + Offer() + StopOffer()

Detailweergave

Kies een item in de inhoudsopgave.

Constructors en destructor

Constructor of DoIPEntityIdentification.

explicit DoIPEntityIdentification (const ara::core::InstanceSpecifier &specifier, ConcurrencyType concurrencyType) noexcept;

Destructor of DoIPEntityIdentification.

virtual ~DoIPEntityIdentification () noexcept;

Methoden

GetEntityId functie

Called to get the EID for the DoIP protocol.

virtual ara::core::Future< EntityId > GetEntityId () noexcept=0;
Offer functie

This Offer will enable the DM to forward request messages to this handler.

ara::core::Result< void > Offer () noexcept;
StopOffer functie

This StopOffer will disable the forwarding of request messages from DM.

void StopOffer () noexcept;

Geneste typen

EntityId klasse

Documentatie van de methoden

functie DoIPEntityIdentification [SWS_DM_01364] Upstream: RS_AP_00137, RS_Diag_00026, RS_AP_00170, RS_AP_00171, RS_AP_00172, RS_AP_00173

explicit DoIPEntityIdentification (const ara::core::InstanceSpecifier &specifier, ConcurrencyType concurrencyType) noexcept;

Constructor of DoIPEntityIdentification.

Header-Datei#include "ara/diag/doip_entity_identification.h"
Scopeclass ara::diag::DoIPEntityIdentification
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe
Verletzungen (Violations)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)

ParameterBeschreibung
specifierInstanceSpecifier to a PortPrototype of a DiagnosticDoIPEntityIdentificationInterface.
concurrencyTypeSpecifies 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.

Record
AUTOSAR/AP/record/SWS_DM_01364
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01364@rel:R25-11#f9e549a8
Content hash
f9e549a8
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01364
Status: valid/unmigrated Version: rel:R25-11#01461b41 Versionshistorie & Revisions (1 transition, 5 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01364@rel:R25-11#01461b41
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#8c31120d2026-09-30
  • R22-11rel:R22-11#97f4f9572026-10-14
  • R23-11rel:R23-11#6285024e2026-10-14
  • R24-11rel:R24-11#bff980792026-10-14
  • R25-11rel:R25-11#01461b412026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

functie GetEntityId [SWS_DM_01366] Upstream: RS_AP_00138, RS_Diag_00026

virtual ara::core::Future< EntityId > GetEntityId () noexcept=0;

Called to get the EID for the DoIP protocol.

Header-Datei#include "ara/diag/doip_entity_identification.h"
Scopeclass ara::diag::DoIPEntityIdentification
Exception-Sicherheitexception safe
Thread-Sicherheitconditional whether the function has to be implemented thread safe or non-thread safe is determined by the ConcurrencyType given in the constructor

Rückgabewert

TypBeschreibung
ara::core::Future< EntityId >Entity identification

Fehler

FehlercodeBeschreibung
This function does not specify any standardized errors.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01366
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01366@rel:R25-11#2008a84b
Content hash
2008a84b
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01366
Status: valid/unmigrated Version: rel:R25-11#b7599708 Versionshistorie & Revisions (1 transition, 5 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01366@rel:R25-11#b7599708
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#0daba9352026-09-30
  • R22-11rel:R22-11#03ed90322026-10-14
  • R23-11rel:R23-11#dc0449c22026-10-14
  • R24-11rel:R24-11#35c811cd2026-10-14
  • R25-11rel:R25-11#b75997082026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

functie Offer [SWS_DM_01367] Upstream: RS_AP_00119, RS_AP_00139, RS_Diag_00026

ara::core::Result< void > Offer () noexcept;

This Offer will enable the DM to forward request messages to this handler.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 60c723a50d6c Herkomst Open 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.

Implementer's Guide volgt (complexiteit I1)

Header-Datei#include "ara/diag/doip_entity_identification.h"
Scopeclass ara::diag::DoIPEntityIdentification
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

TypBeschreibung
ara::core::Result< void >Returns nothing or an error.

Fehler

FehlercodeBeschreibung
DiagOfferErrc::kAlreadyOfferedrollback_semantics The service is already offered.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01367
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01367@rel:R25-11#ecd292d2
Content hash
ecd292d2
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01367
Status: valid/unmigrated Version: rel:R25-11#1e1b8396 Versionshistorie & Revisions (1 transition, 5 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01367@rel:R25-11#1e1b8396
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#bac2d0d72026-09-30
  • R22-11rel:R22-11#78e265802026-10-14
  • R23-11rel:R23-11#4d70569b2026-10-14
  • R24-11rel:R24-11#2f07768f2026-10-14
  • R25-11rel:R25-11#1e1b83962026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

functie StopOffer [SWS_DM_01368] Upstream: RS_Diag_00026

void StopOffer () noexcept;

This StopOffer will disable the forwarding of request messages from DM.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 2e0edce0b8e6 Herkomst Open 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.

Implementer's Guide volgt (complexiteit I2)

Header-Datei#include "ara/diag/doip_entity_identification.h"
Scopeclass ara::diag::DoIPEntityIdentification
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

TypBeschreibung
None

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01368
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01368@rel:R25-11#4023f013
Content hash
4023f013
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01368
Status: valid/unmigrated Version: rel:R25-11#995f1e52 Versionshistorie & Revisions (1 transition, 5 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01368@rel:R25-11#995f1e52
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#0a1040402026-09-30
  • R22-11rel:R22-11#9e1482542026-10-14
  • R23-11rel:R23-11#de1f2b922026-10-14
  • R24-11rel:R24-11#40423c4c2026-10-14
  • R25-11rel:R25-11#995f1e522026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

functie ~DoIPEntityIdentification [SWS_DM_01365] Upstream: RS_AP_00134, RS_Diag_00026

virtual ~DoIPEntityIdentification () noexcept;

Destructor of DoIPEntityIdentification.

Header-Datei#include "ara/diag/doip_entity_identification.h"
Scopeclass ara::diag::DoIPEntityIdentification
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01365
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01365@rel:R25-11#053fffef
Content hash
053fffef
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01365
Status: valid/unmigrated Version: rel:R25-11#dd9937e2 Versionshistorie & Revisions (1 transition, 5 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01365@rel:R25-11#dd9937e2
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#0ce405e32026-09-30
  • R22-11rel:R22-11#73c187462026-10-14
  • R23-11rel:R23-11#e45fbddd2026-10-14
  • R24-11rel:R24-11#d5ded6fa2026-10-14
  • R25-11rel:R25-11#dd9937e22026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill