DEENESPTFRRUARHIKOZHNL

클래스 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

사용자 가이드AI 생성

어댑티브 애플리케이션이 진단 관리를 위한 DoIP Entity 식별을 제공할 수 있도록 합니다.
AI 생성 미검증 모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: 73f8b2cf1d2e 출처 열린 질문 (2)
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문

어댑티브 애플리케이션이 진단 관리를 위한 DoIP Entity 식별을 제공할 수 있도록 합니다.

클래스 ara::diag::DoIPEntityIdentification은(는) 어댑티브 애플리케이션이 DoIP 진단 프로토콜을 위한 Entity 식별(EID)을 동적으로 제공할 수 있도록 합니다 [SWS_DM_01361]. 인스턴스화 후 애플리케이션은 Offer()을(를) 사용하여 포워딩을 활성화하고, 순수 가상 메서드 GetEntityId()을(를) 통해 Diagnostic Management의 쿼리에 Future [SWS_DM_01366], [SWS_DM_01367]을(를) 사용하여 비동기적으로 응답합니다. 쿼리 시점에 인터페이스가 아직 제공되지 않은 경우 진단 관리는 대체 수단으로 표준화된 0xFF 값을 전송합니다 [SWS_DM_01528].

컨텍스트

클래스 ara::diag::DoIPEntityIdentification은(는) DoIP(Diagnostic over IP) 프로토콜을 위한 Entity 식별(EID)을 동적으로 제공하는 역할을 합니다 [SWS_DM_01361]. AUTOSAR Adaptive 환경에서 이는 개별 어댑티브 애플리케이션과 Diagnostic Management(DM) 사이의 기능적 브리지를 형성합니다 AUTOSAR_AP_SWS_Diagnostics, 107쪽. 구성에서 DoIpNetworkConfiguration.eidRetrieval이(가) DoIpEidRetrievalEnum.eidUseApi 모드로 설정된 경우, Diagnostic Management는 이 프로그래밍 인터페이스를 통해 EID를 요청합니다 [SWS_DM_01361]. 소프트웨어 아키텍처로의 바인딩은 DiagnosticDoIPEntityIdentificationInterface의 PortPrototype을 참조하는 ara::core::InstanceSpecifier을(를) 통해 수행됩니다 [SWS_DM_01364].

수명 주기

생성은 InstanceSpecifier 외에도 매개변수 ConcurrencyType(kConcurrent 또는 kNotConcurrent)이(가) 전달되는 명시적 생성자를 통해 수행됩니다 [SWS_DM_01364]. 후자는 인터페이스에 대한 후속 호출이 스레드 안전하게 처리되어야 하는지 여부를 결정합니다 [SWS_DM_01364], [SWS_DM_01366]. 생성 후 객체는 처음에 비활성 상태로 유지됩니다. Offer()을(를) 호출하면 Diagnostic Management를 위해 인터페이스가 활성화되고 핸들러로의 요청 포워딩이 활성화됩니다 [SWS_DM_01367]. 객체가 소멸되기 전이나 작동이 종료될 때 StopOffer()은(는) 포워딩을 다시 차단합니다 [SWS_DM_01368]. 소멸은 최종적으로 가상 소멸자 [SWS_DM_01365]을(를) 통해 수행됩니다. Offer(), StopOffer() 및 소멸자 모두 스레드 안전하지 않으므로 애플리케이션 코드에서 조율된 동기화가 필요합니다 [SWS_DM_01365], [SWS_DM_01367], [SWS_DM_01368].

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

상태 다이어그램: DoIP Entity 식별의 수명 주기 및 등록 단계. 출처: [SWS_DM_01364], [SWS_DM_01365], [SWS_DM_01367], [SWS_DM_01368].

사용 경로

일반적인 사용 시나리오에서 어댑티브 애플리케이션은 ara::diag::DoIPEntityIdentification에서 자체 구현 클래스를 파생하고 순수 가상 메서드 GetEntityId()을(를) 재정의합니다 [SWS_DM_01366]. 유효한 식별자로 인스턴스화한 후 애플리케이션은 Offer()을(를) 사용하여 핸들러를 등록합니다 [SWS_DM_01367]. DoIP 메시지를 구성하기 위해 Entity ID가 필요해지면 Diagnostic Management는 GetEntityId()을(를) 호출합니다 [SWS_DM_01361], [SWS_DM_01366]. 이 메서드는 ara::core::Future<EntityId>을(를) 반환하므로 식별 데이터를 비동기적으로 확인하고 제공할 수 있습니다 [SWS_DM_01366]. 기능 작동이 종료되면 애플리케이션은 StopOffer()을(를) 통해 오퍼를 철회합니다 [SWS_DM_01368].

DoIP Entity ID 제공 흐름애플리케이션DoIPEntityIdentificationDiagnostic ManagementDoIPEntityIdentification(specifier, concurrencyType)Offer()ara::core::Result<void>Use Case: DoIP 프로토콜의 EID 쿼리GetEntityId()GetEntityId()ara::core::Future<EntityId>Use Case: DienstbeendigungStopOffer()

시퀀스 다이어그램: Diagnostic Management에 의한 EID 등록 및 쿼리의 일반적인 호출 순서. 출처: [SWS_DM_01361], [SWS_DM_01364], [SWS_DM_01366], [SWS_DM_01367], [SWS_DM_01368].

오류 시나리오

생성 시 모델 구성이 잘못되면 특정한 런타임 위반이 발생합니다. 모델에서 InstanceSpecifier을(를) 확인할 수 없거나 PortPrototype을 참조하지 않는 경우 InstanceSpecifierMappingIntegrityViolation이(가) 발생합니다 [SWS_DM_01364]. 포트 매핑이 DiagnosticDoIPEntityIdentificationInterface을(를) 참조하지 않는 경우 PortInterfaceMappingViolation이(가) 발생하며, 프로세스 일치가 누락된 경우 ProcessMappingViolation이(가) 트리거됩니다 [SWS_DM_01364]. 프로세스 내에서 동일한 식별자가 여러 번 사용되면 InstanceSpecifierAlreadyInUseViolation이(가) 뒤따릅니다 [SWS_DM_01364].

서비스가 이미 활발히 제공(offer)되고 있을 때 Offer()을(를) 호출하면 메서드는 오류 코드 DiagOfferErrc::kAlreadyOffered을(를) 포함하는 ara::core::Result을(를) 반환합니다 [SWS_DM_01367]. 요청 시점에 인터페이스가 아직 제공되지 않은 경우 등 Diagnostic Management가 EID를 쿼리할 수 없는 경우 정의된 프로토콜 폴백이 적용됩니다. Diagnostic Management는 대체 수단으로 DoIP 메시지에 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF의 6바이트 EID 값을 전송합니다 [SWS_DM_01528].

이 가이드는 AUTOSAR Adaptive 사양 R25-11을 기반으로 AI 어시스턴트에 의해 생성되었습니다.

멤버 맵

클래스 다이어그램

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

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

상세 보기

개요에서 항목을 선택하세요.

생성자 및 소멸자

Constructor of DoIPEntityIdentification.

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

Destructor of DoIPEntityIdentification.

virtual ~DoIPEntityIdentification () noexcept;

메서드

Called to get the EID for the DoIP protocol.

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

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

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

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

void StopOffer () noexcept;

중첩 타입

EntityId 클래스

메서드 문서

함수 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#01fb6a95
Content hash
01fb6a95
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

함수 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#937a6e86
Content hash
937a6e86
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

함수 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.

AI 생성 미검증 모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: 60c723a50d6c 출처 열린 질문 (1)
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문

클래스 ara::diag::DoIPEntityIdentification의 메서드 Offer은(는) Diagnostic Management Daemon(DM)이 수신 DoIP 요청을 등록된 핸들러로 전달하는 것을 활성화합니다([SWS_DM_01367]). 성공적으로 호출된 후에만 메시지가 핸들러로 전달됩니다. 해석: 이 호출은 일반적으로 진단 메시지를 수신하기 전, Adaptive Application의 초기화 단계에서 수행됩니다. 질문 Q-4b78d4f80bda63a4 (열림)

사용법 및 시맨틱:

  • 호출 컨텍스트: 해당 연산은 동기식으로 실행되며 noexcept(으)로 선언되어 있습니다. 예외를 발생시키지 않습니다([SWS_DM_01367]).
  • 반환값: 성공 시 아무런 값도 포함하지 않는 ara::core::Result<void>을(를) 반환합니다([SWS_DM_01367]).

오류 처리:

  • 인스턴스에 대해 인터페이스가 이미 제공된 경우 호출은 실패하며 롤백 시맨틱과 함께 오류 코드 DiagOfferErrc::kAlreadyOffered을(를) 반환합니다([SWS_DM_01367]).

동시성 및 제약 사항:

  • 해당 인터페이스는 not thread-safe로 명시되어 있습니다([SWS_DM_01367]). 동일한 인스턴스에 대한 동시 호출은 호출 애플리케이션에 의해 동기화되어야 합니다.

상호작용:

등록 패턴은 DoIPGroupIdentification([SWS_DM_00725]) 및 DoIPPowerMode([SWS_DM_00735])와 같은 다른 DoIP 서비스 및 제네릭 UDS 핸들러([SWS_DM_00619])의 방식과 일치합니다. 명명법은 ara::com에서 알려진 패턴을 따르지만, DM에 대해 독자적인 등록을 구성합니다(AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”).

이 텍스트는 AUTOSAR R25-11 사양을 바탕으로 AI에 의해 생성되었습니다.

구현자 가이드 준비 중 (복잡도 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#f77cb802
Content hash
f77cb802
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

함수 StopOffer [SWS_DM_01368] Upstream: RS_Diag_00026

void StopOffer () noexcept;

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

AI 생성 미검증 모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: 2e0edce0b8e6 출처 열린 질문 (1)
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문

사용

메서드 ara::diag::DoIPEntityIdentification::StopOffer은(는) DoIP 엔티티 식별을 위한 서비스 제공을 종료하고, Diagnostic Management(DM)에서 애플리케이션으로의 요청 메시지 전달을 비활성화합니다[SWS_DM_01368]. 해당 인터페이스는 헤더 파일 ara/diag/doip_entity_identification.h을(를) 통해 제공됩니다. 파라미터를 받지 않으며 반환값을 반환하지 않습니다(void) [SWS_DM_01368]. 해석: 시그니처에 Future 객체나 콜백을 통한 알림이 제공되지 않으므로, 호출은 DM 내에서 전달이 종료될 때까지 동기 블로킹 방식으로 실행될 것으로 추정됩니다. 질문 Q-75f67df3a003b08f (열림)

오류 처리 및 예외 안전성

해당 연산은 지정자 noexcept(으)로 선언되어 있으며 예외 안전(exception safe)으로 명시되어 있습니다[SWS_DM_01368]. 특정 오류 코드를 반환하지 않으며 예외를 발생시키지 않습니다.

동시성 및 제약사항

실행 환경과 관련하여 이 메서드는 스레드 안전하지 않음(not thread-safe)으로 분류됩니다[SWS_DM_01368]. ara::diag::DoIPEntityIdentification의 동일한 인스턴스에 대해 병렬 호출 또는 접근이 발생하는 경우 애플리케이션 측에서 동기화해야 합니다.

상호 작용

이 동작은 AUTOSAR Adaptive Diagnostic Management의 통합 라이프사이클 패턴에 부합합니다. 메시지 전달의 유사한 비활성화는 예를 들어 [SWS_DM_00726]을(를) 통한 그룹 식별 및 [SWS_DM_01089]을(를) 통한 진단 스위치와 모니터에서도 이루어집니다. AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”에서 강조된 바와 같이, Offer 및 StopOffer의 명명법은 ara::com의 패턴을 기반으로 하지만 진단 인터페이스를 위한 독자적인 구현을 나타냅니다.

이 사용 지침은 AUTOSAR Adaptive R25-11 사양을 바탕으로 자동 생성되었습니다.

구현자 가이드 준비 중 (복잡도 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#ea80b362
Content hash
ea80b362
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

함수 ~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#36f62ac0
Content hash
36f62ac0
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