DEENESPTFRRUARHIKOZHNL

klasse ara::diag::GenericDataIdentifier

[SWS_DM_00607] Upstream: RS_Diag_04169

class GenericDataIdentifier {...};

Generic DataIdentifier interface.

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

User GuideAI-GEGENEREERD

Stelt applicaties in staat om UDS-lees- en schrijfverzoeken voor diagnose-identifiers generiek te verwerken.
DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 02c252ff66d0 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Stelt applicaties in staat om UDS-lees- en schrijfverzoeken voor diagnose-identifiers generiek te verwerken.

De klasse ara::diag::GenericDataIdentifier dient als generieke interface voor de asynchrone verwerking van UDS-lees- en schrijfverzoeken voor diagnose-identifiers in AUTOSAR Adaptive [SWS_DM_00636]. Na binding aan een poort en vrijgave via Offer() leidt Diagnostic Management verzoeken door naar de geïmplementeerde methoden [SWS_DM_00638]. Als singuliere instantie kan het object noch gekopieerd noch verplaatst worden, terwijl de thread-safety van de verwerking van verzoeken wordt geregeld via de bij de constructor gekozen concurrency-configuratie.

Context

De klasse ara::diag::GenericDataIdentifier vormt een generieke service-interface binnen het functionele cluster Diagnostic Management (DM) van het AUTOSAR Adaptive Platform SWS Diagnostics §8.2 “GenericDataIdentifier”. Waar typespecifieke interfaces gebonden zijn aan vast gemodelleerde datatypes, dient GenericDataIdentifier voor de flexibele verwerking van diagnose-identifiers (Data Identifiers, DID's), waarbij de 16-bits identifier dynamisch als parameter wordt doorgegeven.

Bij de diagnoseverwerking zijn primair drie rollen betrokken:

  • De externe diagnosetester, die gestandaardiseerde UDS-diensten zoals ReadDataByIdentifier (0x22) of WriteDataByIdentifier (0x2E) richt aan het voertuig.
  • Diagnostic Management (DM), dat diagnoseverzoeken ontvangt, valideert en via gedefinieerde poortinterfaces doorstuurt naar de desbetreffende applicatie-instantie, mits deze vooraf via Offer is geactiveerd [SWS_DM_00638].
  • De applicatiespecifieke implementatie van GenericDataIdentifier, die de eigenlijke verwerkingslogica inkapselt door de methoden Read [SWS_DM_00636] en Write [SWS_DM_00637] beschikbaar te stellen en de data asynchroon te retourneren.

Levenscyclus

Een instantie van ara::diag::GenericDataIdentifier wordt expliciet geïnstantieerd via haar constructor [SWS_DM_00634]. Daarbij bindt de aanroeper het object aan een ara::core::InstanceSpecifier, die verwijst naar een PortPrototype van een gemodelleerde DiagnosticDataIdentifierGenericInterface. Via het argument concurrencyType (van het type DataIdentifierConcurrencyType) wordt vastgelegd of verzoeken gelijktijdig (kConcurrent) dan wel sequentieel (kNotConcurrent) aan de handler worden overgedragen [SWS_DM_00634].

Met betrekking tot eigendom en levensduur is GenericDataIdentifier gemodelleerd als een singuliere, niet-kopieerbare en niet-verplaatsbare instantie:

Na instantiëring bevindt het object zich in de inactieve toestand; Diagnostic Management leidt nog geen verzoeken door. Pas door de aanroep van Offer() [SWS_DM_00638] wordt het doorsturen geactiveerd. Om het doorsturen van diagnoseverzoeken weer te deactiveren, roept de applicatie StopOffer() [SWS_DM_00639] aan. De vernietiging van het object geschiedt via de virtuele destructor [SWS_DM_00635].

Wat betreft concurrency is de constructor thread-safe (thread-safe) [SWS_DM_00634]. Daarentegen zijn de administratieve methoden Offer() [SWS_DM_00638] en StopOffer() [SWS_DM_00639] evenals de destructor [SWS_DM_00635] als niet-thread-safe gespecificeerd. De thread-safety van de methoden Read en Write hangt voorwaardelijk af van de gekozen concurrencyType [SWS_DM_00636], [SWS_DM_00637].

lifecycle NichtInitialisiert Niet geïnitialiseerd Inaktiv Inaktiv (StopOffer) NichtInitialisiert->Inaktiv Konstruktor Aktiv Aktiv (Offer) Inaktiv->Aktiv Offer() Beendet Vernietigd Inaktiv->Beendet Destruktor Aktiv->Inaktiv StopOffer() Aktiv->Beendet Destruktor

Toestandsdiagram: Levenscyclus en toestandsovergangen van de handler-instantie tussen inactiviteit en gereedheid voor doorsturen. Bronnen: [SWS_DM_00634], [SWS_DM_00638], [SWS_DM_00639], [SWS_DM_00635]

Gebruikspad

Een typische end-to-end flow voor de afhandeling van diagnoseverzoeken is onderverdeeld in de volgende stappen:

  1. Initialisatie: De applicatie instantieert haar afgeleide handler-klasse onder vermelding van de InstanceSpecifier en de concurrency-configuratie [SWS_DM_00634]. Interpretatie: In de praktijk zal dit doorgaans tijdens de initialisatiefase van het applicatieproces plaatsvinden. Vraag Q-32596fba68253958 (open)
  2. Dienstbeschikbaarstelling: De applicatie roept Offer() aan [SWS_DM_00638]. Diagnostic Management activeert het doorsturen van binnenkomende DID-verzoeken.
  3. Verzoekverwerking:
    • Komt er een leesopdracht binnen, dan roept DM de methode Read(dataIdentifier, metaInfo, cancellationHandler) aan [SWS_DM_00636]. De applicatie controleert de overgedragen 16-bits identifier en levert asynchroon een ara::core::Future<OperationOutput> op.
    • Arriveert er een schrijftaak, dan roept DM Write(dataIdentifier, requestData, metaInfo, cancellationHandler) aan [SWS_DM_00637]. De payload in requestData blijft geldig totdat de bijbehorende promise is vervuld of de verwerking wordt afgebroken.
  4. Afbreekcontrole: Tijdens langdurige operaties kan de handler via cancellationHandler.IsCanceled() controleren of de conversatie is afgebroken, of via cancellationHandler.SetNotifier een notificatiefunctie registreren [SWS_DM_00636], [SWS_DM_00637].
  5. Dienstafmelding: Voor het beëindigen van de handler roept de applicatie StopOffer() aan [SWS_DM_00639], waardoor DM het doorsturen staakt.
Verloop van een generiek leesverzoekDiagnosetesterDiagnostic ManagementGenericDataIdentifierUse Case: DienstregistrierungOffer()Result<void> (Erfolg)Use Case: Leseanforderung (UDS 0x22)ReadDataByIdentifierRead(dataIdentifier, metaInfo, cancellationHandler)altDaten erfolgreich ermitteltFuture met OperationOutputPositief UDS-antwoord met gegevensFehlerfall / NRCFuture met DiagUdsNrcErrcNegative UDS-Antwort (NRC)

Sequentiediagram: samenspel tussen externe tester, Diagnostic Management en GenericDataIdentifier bij een UDS-leesverzoek. Bronnen: [SWS_DM_00638], [SWS_DM_00636]

Foutscenario's

Fouten kunnen in verschillende fasen van de interactie optreden:

  • Configuratie- en mappingschendingen: als de InstanceSpecifier in het model niet kan worden herleid of niet naar een PortPrototype verwijst, is er sprake van een InstanceSpecifierMappingIntegrityViolation [SWS_DM_00634]. Ontbreekt de toewijzing aan een DiagnosticDataPortMapping, dan treedt er een PortInterfaceMappingViolation op [SWS_DM_00634]. Een ontbrekende procesmapping genereert een ProcessMappingViolation en een reeds gebruikte InstanceSpecifier leidt tot een InstanceSpecifierAlreadyInUseViolation [SWS_DM_00634].
  • Meervoudig aanbieden: 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_00638].
  • Functionele diagnosefouten: kan een lees- of schrijfverzoek functioneel niet worden afgehandeld, dan retourneert de applicatie in de Future geen successtatus, maar een gestandaardiseerde UDS-NRC (Negative Response Code) via DiagUdsNrcErrc conform ISO 14229-1 [SWS_DM_00636], [SWS_DM_00637].

Deze handleiding is gebaseerd op de AUTOSAR-specificatie R25-11 en is geautomatiseerd gegenereerd.

Ledenkaart

Operatoren

1

Geneste typen

1

Klassendiagram

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

G nara__diag__GenericDataIdentifier357 GenericDataIdentifier + GenericDataIdentifier() + operator=() + ~GenericDataIdentifier() + Offer() + Read() + StopOffer() + Write()

Detailweergave

Kies een item in de inhoudsopgave.

Constructors en destructor

Class for an GenericDataIdentifier.

Overloads GenericDataIdentifier 3
explicit GenericDataIdentifier (const ara::core::InstanceSpecifier &specifier, DataIdentifierConcurrencyType concurrencyType) noexcept; SWS_DM_00634
GenericDataIdentifier (GenericDataIdentifier &)=delete; SWS_DM_01653
GenericDataIdentifier (GenericDataIdentifier &&) noexcept=delete; SWS_DM_01654

Destructor of class GenericDataIdentifier .

virtual ~GenericDataIdentifier () noexcept;

Methoden

Offer functie

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

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

Called for ReadDataByIdentifier request for this DiagnosticDataIdentifier.

virtual ara::core::Future< OperationOutput > Read (std::uint16_t data Identifier, const MetaInfo &metaInfo, CancellationHandler cancellation Handler) noexcept=0;
StopOffer functie

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

void StopOffer () noexcept;
Write functie

Called for WriteDataByIdentifier request for this DiagnosticDataIdentifier.

virtual ara::core::Future< void > Write (std::uint16_t dataIdentifier, ara::core::Span< const std::uint8_t > requestData, const MetaInfo &metaInfo, CancellationHandler cancellationHandler) noexcept;

Operatoren

operator= functie 2

GenericDataIdentifier shall be a single not assignable instance.

Overloads = 2

Geneste typen

Documentatie van de methoden

functie GenericDataIdentifier [SWS_DM_00634] Upstream: RS_AP_00137, RS_Diag_04169, RS_AP_00170, RS_AP_00171, RS_AP_00172, RS_AP_00173

explicit GenericDataIdentifier (const ara::core::InstanceSpecifier &specifier, DataIdentifierConcurrencyType concurrencyType) noexcept;

Class for an GenericDataIdentifier.

Header-Datei#include "ara/diag/generic_data_identifier.h"
Scopeclass ara::diag::GenericDataIdentifier
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 typed by a pingViolation DiagnosticDataIdentifierGenericInterface needs to be referenced by a DiagnosticDataPortMapping. 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 DiagnosticDataIdentifierGenericInterface.
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_00634
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00634@rel:R25-11#eaf6c182
Content hash
eaf6c182
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00634
Status: valid/unmigrated Version: rel:R25-11#71f09e07 Versionshistorie & Revisions (1 transition, 8 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_00634@rel:R25-11#71f09e07
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#9d754b4c2026-09-30
  • R19-11rel:R19-11#281ed5b12026-10-14
  • R20-11rel:R20-11#c8b741432026-10-14
  • R21-11rel:R21-11#161554792026-10-14
  • R22-11rel:R22-11#55a5b7df2026-10-14
  • R23-11rel:R23-11#571dfcd62026-10-14
  • R24-11rel:R24-11#4a63e6522026-10-14
  • R25-11rel:R25-11#71f09e072026-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 GenericDataIdentifier [SWS_DM_01653] Upstream: RS_AP_00147

GenericDataIdentifier (GenericDataIdentifier &)=delete;

GenericDataIdentifier shall be a single not copy-able instance.

Header-Datei#include "ara/diag/generic_data_identifier.h"
Scopeclass ara::diag::GenericDataIdentifier

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

Record
AUTOSAR/AP/record/SWS_DM_01653
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01653@rel:R25-11#ae0008f7
Content hash
ae0008f7
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01653
Status: valid/unmigrated Version: rel:R25-11#3de9089c Versionshistorie & Revisions (1 transition, 4 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_01653@rel:R25-11#3de9089c
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#f309daca2026-09-30
  • R23-11rel:R23-11#ad3cab8a2026-10-14
  • R24-11rel:R24-11#d3cdff682026-10-14
  • R25-11rel:R25-11#3de9089c2026-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 GenericDataIdentifier [SWS_DM_01654] Upstream: RS_AP_00147

GenericDataIdentifier (GenericDataIdentifier &&) noexcept=delete;

Move constructor of GenericDataIdentifier.

Header-Datei#include "ara/diag/generic_data_identifier.h"
Scopeclass ara::diag::GenericDataIdentifier

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

Record
AUTOSAR/AP/record/SWS_DM_01654
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01654@rel:R25-11#44c974ed
Content hash
44c974ed
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01654
Status: valid/unmigrated Version: rel:R25-11#8f08b1d5 Versionshistorie & Revisions (1 transition, 4 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_01654@rel:R25-11#8f08b1d5
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#11d817c52026-09-30
  • R23-11rel:R23-11#5421592e2026-10-14
  • R24-11rel:R24-11#8f08b1d52026-10-14
  • R25-11rel:R25-11#8f08b1d52026-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_00638] Upstream: RS_AP_00139, RS_AP_00119, RS_Diag_04169

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: 860e6bd15d7f Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik: De synchrone methode Offer van de klasse ara::diag::GenericDataIdentifier ([SWS_DM_00638]) dient voor de registratie van een generieke data-identifier-handler bij Diagnostic Management (DM). Door deze aanroep wordt het DM geautoriseerd om inkomende diagnoseverzoeken (request messages) voor de desbetreffende data-identifier door te sturen naar deze handler ([SWS_DM_00638]). De functie accepteert geen overdrachtsparameters en levert synchroon een ara::core::Result<void> terug ([SWS_DM_00638]), die uitsluitsel geeft over succes of fout.

Foutafhandeling: De methode is gedeclareerd met noexcept en garandeert volledige uitzonderingsveiligheid (exception safe) ([SWS_DM_00638]). Mogelijke fouten worden via de ara::core::Result gemeld. Werd de handler al eerder beschikbaar gesteld, dan retourneert de functie de foutcode DiagOfferErrc::kAlreadyOffered met rollback-semantiek ([SWS_DM_00638]). Deze komt overeen met de algemene foutenumeratie DiagErrc::kAlreadyOffered ([SWS_DM_00514]).

Concurrency en beperkingen: De functie is gespecificeerd als niet-thread-safe (not thread-safe) ([SWS_DM_00638]). Bijgevolg moeten aanroepen op dezelfde instantie worden beschermd tegen gelijktijdige toegang. Aangezien er voor GenericDataIdentifier geen afzonderlijke de-registratiemethode is gespecificeerd, is het dienstaanbod vermoedelijk gekoppeld aan de levensduur van de handler-instantie (interpretatie). Vraag Q-7c64a5bd308464a8 (open)

Samenspel: De procedure volgt het uniforme patroon voor beschikbaarstelling van Diagnostic Management. Analoge interfaces zijn te vinden voor typespecifieke data-identifiers ([SWS_DM_00599]), generieke routines ([SWS_DM_00557]) en generieke UDS-diensten ([SWS_DM_00619]).

Deze gebruiksinstructie is gegenereerd door een AI-systeem.

Implementer's Guide volgt (complexiteit I1)

Header-Datei#include "ara/diag/generic_data_identifier.h"
Scopeclass ara::diag::GenericDataIdentifier
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_00638
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00638@rel:R25-11#1ab4c7c2
Content hash
1ab4c7c2
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00638
Status: valid/unmigrated Version: rel:R25-11#1ea7c5d4 Versionshistorie & Revisions (1 transition, 8 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_00638@rel:R25-11#1ea7c5d4
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#d9e8c1292026-09-30
  • R19-11rel:R19-11#34f18c6b2026-10-14
  • R20-11rel:R20-11#f2c3beea2026-10-14
  • R21-11rel:R21-11#a7b6c9862026-10-14
  • R22-11rel:R22-11#533034aa2026-10-14
  • R23-11rel:R23-11#b980ade42026-10-14
  • R24-11rel:R24-11#198e42702026-10-14
  • R25-11rel:R25-11#1ea7c5d42026-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 Read [SWS_DM_00636] Upstream: RS_AP_00138, RS_AP_00119, RS_Diag_04169, RS_Diag_04170, RS_ Diag_04172

virtual ara::core::Future< OperationOutput > Read (std::uint16_t data Identifier, const MetaInfo &metaInfo, CancellationHandler cancellation Handler) noexcept=0;

Called for ReadDataByIdentifier request for this DiagnosticDataIdentifier.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 7772a86b7791 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik

De methode Read van de klasse ara::diag::GenericDataIdentifier wordt aangeroepen zodra een diagnoseverzoek voor ReadDataByIdentifier (UDS 0x22) voor de desbetreffende data-identifier binnenkomt [SWS_DM_00636]. Als parameters accepteert de functie de numerieke identificator dataIdentifier, de context metaInfo en een cancellationHandler. Via de cancellationHandler kan de applicatie middels IsCanceled de afbreekstatus opvragen of via SetNotifier een notificatiefunctie voor afgebroken conversaties registreren [SWS_DM_00636]. Het resultaat wordt asynchroon beschikbaar gesteld via een ara::core::Future<OperationOutput>, die in geval van succes de payload (OperationOutput) retourneert [SWS_DM_00636].

Foutafhandeling

In geval van een fout levert de Future een negatieve UDS-retourwaarde (NRC) conform ISO 14229-1 via DiagUdsNrcErrc [SWS_DM_00636]. Indien de interface nog niet of niet meer via offer() wordt aangeboden, antwoordt Diagnostic Management (DM) zelfstandig met NRC 0x94 (ResourceTemporarilyNotAvailable) [SWS_DM_01257]. Wordt de geconfigureerde limiet voor Response Pending-berichten bereikt, dan breekt de server de verwerking af en antwoordt met NRC 0x10 (generalReject) [SWS_DM_00369].

Gelijktijdigheid en wisselwerking

De methode is gedeclareerd als noexcept en uitzonderingsveilig [SWS_DM_00636]. De thread-safety ervan is voorwaardelijk: of de implementatie thread-safe moet zijn, wordt geregeld via de in de constructor doorgegeven ConcurrencyType [SWS_DM_00636]. Staat readWrite op kConcurrent, dan mag het DM lees- en schrijfacties gelijktijdig initiëren; anders (kNotConcurrent) vindt de aanroep sequentieel plaats [SWS_DM_00939]. In tegenstelling tot specifieke interfaces zoals [SWS_DM_00640] dekt GenericDataIdentifier generieke DID-bereiken flexibel af via het doorgegeven ID [SWS_DM_00636].

Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de AUTOSAR-specificatie.

Implementer's Guide volgt (complexiteit I1)

Header-Datei#include "ara/diag/generic_data_identifier.h"
Scopeclass ara::diag::GenericDataIdentifier
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

Parameter (in)

ParameterBeschreibung
dataIdentifierthe corresponding DataIdentifier
metaInfoMetaInfo of the request.
cancellationHandlerThis parameter is used to • Query the current cancellation status by calling cancellationHandler.IsCanceled. Returns TRUE in case, the current conversation has been cancelled and FALSE otherwise. • Register a notifier function by calling cancellationHandler.SetNotifier. The registered notifier is called if the current conversation is cancelled.

Rückgabewert

TypBeschreibung
ara::core::Future<OperationOutput >A Future with either OperationOutput (for a positive response message) or an UDS NRC value (for a negative response message).

Fehler

FehlercodeBeschreibung
Please use an applicable NRC, as defined in ISO 14229-1, using DiagUdsNrcErrc.

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

Record
AUTOSAR/AP/record/SWS_DM_00636
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00636@rel:R25-11#d60d60aa
Content hash
d60d60aa
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00636
Status: valid/unmigrated Version: rel:R25-11#cfd80198 Versionshistorie & Revisions (1 transition, 8 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_00636@rel:R25-11#cfd80198
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#339b63522026-09-30
  • R19-11rel:R19-11#f8a15c312026-10-14
  • R20-11rel:R20-11#5e9a44792026-10-14
  • R21-11rel:R21-11#34887de02026-10-14
  • R22-11rel:R22-11#91d437d52026-10-14
  • R23-11rel:R23-11#6625968e2026-10-14
  • R24-11rel:R24-11#430ea0f32026-10-14
  • R25-11rel:R25-11#cfd801982026-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_00639] Upstream: RS_Diag_04169

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: bd73a88bfde2 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik en aanroepcontext

De lidfunctie StopOffer van de klasse ara::diag::GenericDataIdentifier dient ertoe het doorsturen van inkomende verzoekberichten vanuit het Diagnostic Management (DM) naar de desbetreffende instantie te deactiveren [SWS_DM_00639]. De aanroep vindt synchroon plaats via de interface uit het headerbestand #include "ara/diag/generic_data_identifier.h" [SWS_DM_00639]. De functie heeft de signatuur void StopOffer() noexcept;, accepteert geen overdrachtparameters en geeft geen retourwaarde terug [SWS_DM_00639].

Foutafhandeling en gelijktijdigheid

De specificatie definieert StopOffer als uitzonderingsveilig (exception safe) en garandeert via de identifier noexcept het uitblijven van excepties [SWS_DM_00639]. Specifieke foutcodes, foutreacties of meldingen aan DET resp. DEM zijn voor deze operatie niet voorzien. Met betrekking tot gelijktijdigheid is de methode geclassificeerd als niet thread-veilig (not thread-safe) [SWS_DM_00639]. Parallelle aanroepen op dezelfde instantie moeten daarom door de aanroeper worden gesynchroniseerd. Interpretatie: reeds gestarte verzoeken in het Diagnostic Management worden vóór de definitieve stop van de doorgifte vermoedelijk nog regulier verwerkt. Vraag Q-94a464dc832c055c (open)

Samenspel in de diagnosemodule

Het patroon voor het intrekken van de servicebeschikbaarstelling wordt in de diagnosemodule gestandaardiseerd en consistent toegepast. Analoge StopOffer-methoden bestaan onder meer voor:

Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de specificatiegegevens.

Implementer's Guide volgt (complexiteit I2)

Header-Datei#include "ara/diag/generic_data_identifier.h"
Scopeclass ara::diag::GenericDataIdentifier
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_00639
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00639@rel:R25-11#ba839411
Content hash
ba839411
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00639
Status: valid/unmigrated Version: rel:R25-11#9225c34d Versionshistorie & Revisions (1 transition, 8 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_00639@rel:R25-11#9225c34d
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#0466e7b52026-09-30
  • R19-11rel:R19-11#e360cf692026-10-14
  • R20-11rel:R20-11#1bc0f5cd2026-10-14
  • R21-11rel:R21-11#3b09d7582026-10-14
  • R22-11rel:R22-11#77376b4a2026-10-14
  • R23-11rel:R23-11#6009f72f2026-10-14
  • R24-11rel:R24-11#d3d4a13c2026-10-14
  • R25-11rel:R25-11#9225c34d2026-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 Write [SWS_DM_00637] Upstream: RS_AP_00138, RS_AP_00119, RS_Diag_04169, RS_Diag_04170

virtual ara::core::Future< void > Write (std::uint16_t dataIdentifier, ara::core::Span< const std::uint8_t > requestData, const MetaInfo &metaInfo, CancellationHandler cancellationHandler) noexcept;

Called for WriteDataByIdentifier request for this DiagnosticDataIdentifier.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 7b195835c98c Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De methode Write van de klasse ara::diag::GenericDataIdentifier wordt aangeroepen door Diagnostic Management zodra een UDS-verzoek van de dienst WriteDataByIdentifier (0x2E) wordt ontvangen [SWS_DM_00637]. Voorwaarde voor de aanroep is dat de opgevraagde data-identifier wordt ondersteund en dat de desbetreffende diagnosesessie alsook het beveiligingsniveau de uitvoering toestaan [SWS_DM_00186], [SWS_DM_00415], [SWS_DM_00416].

De aanroep vindt plaats met de volgende parameters [SWS_DM_00637]:

  • dataIdentifier: De 16-bits identificator van de te schrijven data-identifier.
  • requestData: Een ara::core::Span met de ruwe gegevens van het verzoek zonder DID-prefix. De buffer blijft geldig totdat de bijbehorende Promise is vervuld of de verwerking wordt afgebroken.
  • metaInfo: Aanvullende metadata over het diagnoseverzoek.
  • cancellationHandler: Dient voor het monitoren van een vroegtijdig afbreken van de conversatie via IsCanceled en voor het registreren van een afbreeknotificatie via SetNotifier.

De uitvoering vindt asynchroon plaats en retourneert een ara::core::Future<void> [SWS_DM_00637]. Bij een succesvolle verwerking wordt de Promise vervuld met void voor een positief antwoordbericht. Treedt er een fout op, dan moet de Future worden afgesloten met een passende negatieve UDS-retourwaarde (NRC) conform ISO 14229-1 via DiagUdsNrcErrc [SWS_DM_00637]. De methode is gedeclareerd als noexcept en moet uitzonderingsveilig worden geïmplementeerd [SWS_DM_00637].

Wat betreft concurrency is de thread-safety voorwaardelijk: of Write thread-safe moet worden geïmplementeerd, hangt af van de ConcurrencyType die bij de instantiëring in de constructor is doorgegeven [SWS_DM_00637]. Een parallelle uitvoering van lees- en schrijfacties wordt geregeld via de flag readWrite [SWS_DM_00939].

Deze tekst is opgesteld door een AI. Alle gegevens zijn uitsluitend gebaseerd op de specificaties van Release R25-11.

Implementer's Guide volgt (complexiteit I1)

Header-Datei#include "ara/diag/generic_data_identifier.h"
Scopeclass ara::diag::GenericDataIdentifier
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

Parameter (in)

ParameterBeschreibung
dataIdentifierthe corresponding DataIdentifier
requestDataContent of request message (without DataIdentifier). Lifetime: Valid until Promise is fulfilled or the processing is cancelled by the cancellationHandler.
metaInfoMetaInfo of the request.
cancellationHandlerThis parameter is used to • Query the current cancellation status by calling cancellationHandler.IsCanceled. Returns TRUE in case, the current conversation has been cancelled and FALSE otherwise. • Register a notifier function by calling cancellationHandler.SetNotifier. The registered notifier is called if the current conversation is cancelled.

Rückgabewert

TypBeschreibung
ara::core::Future< void >A Future with either void (for a positive response message) or an UDS NRC value (for a negative response message).

Fehler

FehlercodeBeschreibung
Please use an applicable NRC, as defined in ISO 14229-1, using DiagUdsNrcErrc.

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

Record
AUTOSAR/AP/record/SWS_DM_00637
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00637@rel:R25-11#1af595da
Content hash
1af595da
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00637
Status: valid/unmigrated Version: rel:R25-11#b7a94afa Versionshistorie & Revisions (1 transition, 8 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_00637@rel:R25-11#b7a94afa
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#889963442026-09-30
  • R19-11rel:R19-11#8d85d1592026-10-14
  • R20-11rel:R20-11#701ab1d02026-10-14
  • R21-11rel:R21-11#10093f0c2026-10-14
  • R22-11rel:R22-11#9b15c55f2026-10-14
  • R23-11rel:R23-11#a7e012442026-10-14
  • R24-11rel:R24-11#9c761e5e2026-10-14
  • R25-11rel:R25-11#b7a94afa2026-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 operator= [SWS_DM_01651] Upstream: RS_AP_00147

GenericDataIdentifier & operator= (GenericDataIdentifier &)=delete;

GenericDataIdentifier shall be a single not assignable instance.

Header-Datei#include "ara/diag/generic_data_identifier.h"
Scopeclass ara::diag::GenericDataIdentifier

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

Record
AUTOSAR/AP/record/SWS_DM_01651
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01651@rel:R25-11#904945a2
Content hash
904945a2
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01651
Status: valid/unmigrated Version: rel:R25-11#9b814f4a Versionshistorie & Revisions (1 transition, 4 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_01651@rel:R25-11#9b814f4a
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#0a92f77c2026-09-30
  • R23-11rel:R23-11#1cfb26532026-10-14
  • R24-11rel:R24-11#211cc0882026-10-14
  • R25-11rel:R25-11#9b814f4a2026-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 operator= [SWS_DM_01652] Upstream: RS_AP_00147

GenericDataIdentifier & operator= (GenericDataIdentifier &&)=delete;

Move assignment operator of GenericDataIdentifier.

Header-Datei#include "ara/diag/generic_data_identifier.h"
Scopeclass ara::diag::GenericDataIdentifier

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

Record
AUTOSAR/AP/record/SWS_DM_01652
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01652@rel:R25-11#3894c390
Content hash
3894c390
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01652
Status: valid/unmigrated Version: rel:R25-11#7c21b544 Versionshistorie & Revisions (1 transition, 4 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_01652@rel:R25-11#7c21b544
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#5c58a4142026-09-30
  • R23-11rel:R23-11#1428a6912026-10-14
  • R24-11rel:R24-11#7c21b5442026-10-14
  • R25-11rel:R25-11#7c21b5442026-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 ~GenericDataIdentifier [SWS_DM_00635] Upstream: RS_AP_00134, RS_Diag_04169

virtual ~GenericDataIdentifier () noexcept;

Destructor of class GenericDataIdentifier .

Header-Datei#include "ara/diag/generic_data_identifier.h"
Scopeclass ara::diag::GenericDataIdentifier
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_00635
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00635@rel:R25-11#9496c248
Content hash
9496c248
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00635
Status: valid/unmigrated Version: rel:R25-11#fc24e0db Versionshistorie & Revisions (1 transition, 8 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_00635@rel:R25-11#fc24e0db
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#882197f52026-09-30
  • R19-11rel:R19-11#ae023e7c2026-10-14
  • R20-11rel:R20-11#6892d8702026-10-14
  • R21-11rel:R21-11#cf811fb72026-10-14
  • R22-11rel:R22-11#0ec9aa792026-10-14
  • R23-11rel:R23-11#924c98d82026-10-14
  • R24-11rel:R24-11#fc24e0db2026-10-14
  • R25-11rel:R25-11#fc24e0db2026-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