DEENESPTFRRUARHIKOZHNL

klasse <ExtendedDataRecord-Namespace>::<ExtendedDataRecordElementInterface>

[SWS_DM_02146] Upstream: RS_Diag_04169

class <ExtendedDataRecordElementInterface> {...};

DiagnosticExtendedDataRecordInterface class

Header-Datei#include "<ExtendedDataRecordElementShortname>.h"
Forwarding-Header#include "<ExtendedDataRecordElementShortname>/_fwd.h"
Scopenamespace <ExtendedDataRecord-Namespace>

User GuideAI-GEGENEREERD

Dient voor het applicatiezijdig beschikbaar stellen van uitgebreide diagnosegegevens voor het adaptieve Diagnostic Management.
DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 0446a63ad449 Herkomst Open vragen (2)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Dient voor het applicatiezijdig beschikbaar stellen van uitgebreide diagnosegegevens voor het adaptieve Diagnostic Management.

De klasse <ExtendedDataRecordElementInterface> dient adaptieve applicaties als interface voor het beschikbaar stellen van uitgebreide diagnosegegevens aan Diagnostic Management ([SWS_DM_02152]). Na instantiëring en activering via Offer() implementeert de handler de asynchrone levering van de gegevens via de zuiver virtuele methode Read() ([SWS_DM_02156]). Aangezien de Diagnostic Manager de gegevensrecords permanent opslaat in het niet-vluchtige geheugen, moeten niet-beschikbare waarden verplicht worden opgevuld met een opvulpatroon. De interface is noch kopieerbaar, noch verplaatsbaar en de destructor ervan is niet thread-safe.

Context

De interface <ExtendedDataRecordElementInterface> dient in het diagnosesubsysteem van het AUTOSAR Adaptive Platform voor het beschikbaar stellen van applicatiespecifieke uitgebreide diagnosegegevens (Extended Data Records) aan Diagnostic Management (DM) (AUTOSAR AP SWS Diagnostics §7.2 “DiagnosticExtendedDataRecordInterface”). Een Extended Data Record bevat diagnosegerelateerde aanvullende gegevens zoals tellerstanden of omgevingsinformatie die aan een foutgebeurtenis zijn toegewezen. De klasse fungeert als abstracte basisinterface voor handler-componenten aan de applicatiezijde. Tot de interactiepartners behoren de Diagnostic Manager (DM), die leesoperaties aanvraagt en coördineert, de concrete handler-implementatie binnen de applicatie en het niet-vluchtige geheugen (Non-Volatile Memory, NVM), waarin de DM de opgehaalde gegevens permanent opslaat ([SWS_DM_02156]). Interpretatie: de aanroep van Read() wordt vermoedelijk veranlasst door een interne diagnoseverwerking in de DM, bijvoorbeeld bij het optreden van een foutgebeurtenis of bij statuswijzigingen van een Diagnostic Trouble Code. Vraag Q-f80be8c2bd5697fc (open)

Context Handler ExtendedDataRecordElementInterface (Anwendungs-Handler) DM Diagnostic Management (DM) Handler->DM Offer() / StopOffer() DM->Handler Read(metaInfo, cancellationHandler) NVM Niet-vluchtig geheugen (NVM) DM->NVM Persistierung

Contextdiagram: samenspel van applicatie-handler, Diagnostic Management en niet-vluchtig geheugen. Bronnen: [SWS_DM_02152], [SWS_DM_02156], AUTOSAR AP SWS Diagnostics §7.2 “DiagnosticExtendedDataRecordInterface”

Levenscyclus

Het aanmaken geschiedt via de geparametriseerde constructor onder vermelding van een ara::core::InstanceSpecifier en de concurrency-modus ara::diag::ConcurrencyType ([SWS_DM_02158], AUTOSAR AP SWS Diagnostics §7.2 “DiagnosticExtendedDataRecordInterface”). De constructie is thread-safe en uitzonderingsveilig (exception safe). Via de parameter concurrencyType wordt vastgelegd of aanroepen van de interface gelijktijdig (kConcurrent) of sequentieel (kNotConcurrent) verwerkt mogen worden ([SWS_DM_02158]). Kopieer- en verplaatsoperaties zijn volledig verhinderd: copy-constructor ([SWS_DM_02147]), copy-toekenning ([SWS_DM_02148]), move-constructor ([SWS_DM_02149]) en move-toekenning ([SWS_DM_02150]) zijn verwijderd (=delete). Een instantie heeft daarmee een vaste identiteit en kan noch gedupliceerd, noch overgedragen worden.

Na instantiëring bevindt het object zich eerst in inactieve toestand. Pas door het aanroepen van Offer() ([SWS_DM_02152]) wordt de service actief geschakeld en stuurt de DM verzoeken door naar de handler. Met behulp van StopOffer() ([SWS_DM_02153]) kan dit doorsturen te allen tijde worden gestopt. De vernietiging vindt plaats via de virtuele destructor ~<ExtendedDataRecordElementInterface>() ([SWS_DM_02151]). Deze is weliswaar uitzonderingsveilig, maar expliciet niet thread-safe (not thread-safe) ([SWS_DM_02151]). Interpretatie: StopOffer() moet vermoedelijk worden aangeroepen vóór het vernietigen van het handler-object, om te waarborgen dat er geen verdere verzoeken binnenkomen terwijl het object wordt vrijgegeven. Vraag Q-c77dda63f0e8798a (open)

Gebruikspad

Het reguliere verloop omvat het aanbieden, het asynchroon beantwoorden van leesverzoeken en de deactivering van de service:

  • Initialisatie: de applicatie instantieert de afgeleide klasse met de passende port-identifier en de concurrency-configuratie ([SWS_DM_02158]).
  • Service-aanbod: door aanroep van Offer() wordt het doorsturen van verzoeken in de DM vrijgegeven ([SWS_DM_02152]). De methode retourneert een ara::core::Result<void>.
  • Gegevensopvraging: wanneer een leesverzoek binnenkomt, roept de DM de zuiver virtuele methode Read() aan ([SWS_DM_02156]). Daarbij worden de verzoek-metadata (metaInfo) en een cancellationHandler meegegeven.
  • Annuleringsafhandeling en teruggave: de handler kan via cancellationHandler.IsCanceled() controleren of de conversatie is afgebroken, of via cancellationHandler.SetNotifier() een notificatie registreren ([SWS_DM_02156]). Het resultaat wordt asynchroon geleverd via een ara::core::Future met een ReadOutput-object ([SWS_DM_02156], [SWS_DM_02154]).
  • Persistentie: de DM neemt de opgehaalde gegevens over en slaat deze permanent op in het niet-vluchtige geheugen ([SWS_DM_02156]).
  • Service-afmelding: vóór het afsluiten roept de applicatie StopOffer() aan ([SWS_DM_02153]) om het doorsturen door de DM te beëindigen voordat de instantie wordt vernietigd ([SWS_DM_02151]).
Verloop van het beschikbaar stellen en lezen van Extended Data RecordsAnwendungHandlerDMNVMUse Case: Initialisatie en dienstaanmeldingKonstruktion(instanceSpec, concurrencyType)Offer()Registrierung aktivierenResult<void>Use Case: DiagnoseabfrageRead(metaInfo, cancellationHandler)Gegevens bepalen / 0xFF-opvulpatroonFuture<ReadOutput>Persisteren van de recordgegevensUse Case: DienstabmeldungStopOffer()Weiterleitung deaktivieren

Sequentiediagram: typisch verloop van de gegevensbeschikbaarstelling en -opvraging. Bronnen: [SWS_DM_02152], [SWS_DM_02153], [SWS_DM_02156], [SWS_DM_02158]

Foutscenario's

Bij het gebruik van de interface dient rekening te worden gehouden met diverse foutcondities en randvoorwaarden:

  • Constructiefouten en modelschendingen: bij het aanroepen van de constructor kunnen modelleringsfouten optreden ([SWS_DM_02158]). Daartoe behoren InstanceSpecifierMappingIntegrityViolation (de identifier kan niet worden opgelost of refereert niet naar een PortPrototype), PortInterfaceMappingViolation (ontbrekende referentiëring door een DiagnosticDataPortMapping), ProcessMappingViolation (geen passend proces in het model gevonden) en InstanceSpecifierAlreadyInUseViolation (de identifier wordt al gebruikt in het proces) ([SWS_DM_02158]).
  • Meervoudig aanbieden: als Offer() wordt aangeroepen terwijl de service al actief wordt aangeboden, mislukt de aanroep en retourneert deze de foutcode DiagOfferErrc::kAlreadyOffered ([SWS_DM_02152]).
  • Niet-beschikbare gegevens bij leesverzoeken: aangezien de DM de gegevens in het niet-vluchtige geheugen opslaat, moet bij een aanroep van Read() verplicht een waarde worden geretourneerd ([SWS_DM_02156]). Als gegevens op het moment van bevragen niet beschikbaar zijn, moet de handler-implementatie deze opvullen met een gedefinieerd opvulpatroon zoals 0xFF ([SWS_DM_02156]).
  • Applicatie- en diagnosefouten: als het beschikbaar stellen van gegevens geheel mislukt, kan de geretourneerde ara::core::Future een overeenkomstige diagnose-NRC-foutcode (DiagUdsNrcErrc) of een applicatiespecifieke fout (ApApplicationError) bevatten ([SWS_DM_02156]).
  • Gevaar bij destructie: aangezien de destructor niet thread-safe is ([SWS_DM_02151]), leidt vernietiging van het object tijdens parallel lopende aanroepen of zonder voorafgaande StopOffer() ([SWS_DM_02153]) tot ongedefinieerd gedrag.

Deze handleiding is gegenereerd door een AI op basis van de specificatie AUTOSAR R25-11.

Ledenkaart

Klassendiagram

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

G n_ExtendedDataRecord_Namespace____ExtendedDataRecordElementInterface_765 <ExtendedDataRecordElementInterface> + <ExtendedDataRecordElementOutArg> + Offer() + Read() + StopOffer() + operator=() + <ExtendedDataRecordElementInterface>() + ~<ExtendedDataRecordElementInterface>()

Detailweergave

Kies een item in de inhoudsopgave.

Methoden

Copy constructor deletion

Overloads <ExtendedDataRecordElementInterface> 3
<ExtendedDataRecordElementInterface2> (const <ExtendedDataRecordElementInterface2> &other)=delete; SWS_DM_02147
<ExtendedDataRecordElementInterface4> ( <ExtendedDataRecordElementInterface4> &&other)=delete; SWS_DM_02149
<ExtendedDataRecordElementInterface1> (ara::core::Instance Specifier instanceSpec, ara::diag::ConcurrencyType concurrencyType) noexcept; SWS_DM_02158
Offer functie

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

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

Provision of a Read ExtendedDataRecordElement. The data fetched by this method is stored in non-volatile memory by the DM and therefore always a value needs to be returned. Not available data at the time of the method call shall be filled with a filling pattern, e.g 0xFF by the implementation of this method (DiagnosticExtendedDataRecordInterface in the role provide).

virtual ara::core::Future< <ExtendedDataRecordElement>ReadOutput > Read (const ara::diag::MetaInfo &metaInfo, ara::diag::CancellationHandler cancellationHandler) noexcept=0;
StopOffer functie

This StopOffer will disable the forwarding of request messages from DM

void StopOffer () noexcept;

Destruction of a DataElement

virtual ~<ExtendedDataRecordElementInterface6> () noexcept;

Operatoren

operator= functie 2

Copy assignment constructor deletion

Overloads = 2
<ExtendedDataRecordElementInterface3> & operator= (const <ExtendedDataRecordElementInterface3> &other)=delete; SWS_DM_02148
<ExtendedDataRecordElementInterface5> & operator= ( <ExtendedDataRecordElementInterface5> &&other)=delete; SWS_DM_02150

Constanten

Member declaration representing an out argument in an Output.

<ExtendedDataRecordElementOutArgType> <ExtendedDataRecordElementOutArg>;

Geneste typen

Documentatie van de methoden

functie <ExtendedDataRecordElementInterface> [SWS_DM_02147] Upstream: RS_AP_00147

<ExtendedDataRecordElementInterface2> (const <ExtendedDataRecordElementInterface2> &other)=delete;

Copy constructor deletion

Header-Datei#include "<ExtendedDataRecordElementShortname>.h"
Scopeclass <ExtendedDataRecord-Namespace>::<ExtendedDataRecordElementInterface>

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

Record
AUTOSAR/AP/record/SWS_DM_02147
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02147@rel:R25-11#c802aee3
Content hash
c802aee3
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02147
Status: valid/unmigrated Version: rel:R25-11#b778fd1a Versionshistorie & Revisions (1 transition)
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_02147@rel:R25-11#b778fd1a
Point-in-Time History:
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 <ExtendedDataRecordElementInterface> [SWS_DM_02149] Upstream: RS_AP_00147

<ExtendedDataRecordElementInterface4> ( <ExtendedDataRecordElementInterface4> &&other)=delete;

Move constructor

Header-Datei#include "<ExtendedDataRecordElementShortname>.h"
Scopeclass <ExtendedDataRecord-Namespace>::<ExtendedDataRecordElementInterface>

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

Record
AUTOSAR/AP/record/SWS_DM_02149
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02149@rel:R25-11#c2a53dfd
Content hash
c2a53dfd
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02149
Status: valid/unmigrated Version: rel:R25-11#922c09b0 Versionshistorie & Revisions (1 transition)
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_02149@rel:R25-11#922c09b0
Point-in-Time History:
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 <ExtendedDataRecordElementInterface> [SWS_DM_02158] Upstream: RS_AP_00137

<ExtendedDataRecordElementInterface1> (ara::core::Instance Specifier instanceSpec, ara::diag::ConcurrencyType concurrencyType) noexcept;

Construct a DataElement from an ara::core::InstanceSpecifier

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 5f6f8ec51798 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik en aanroepcontext

De functie <ExtendedDataRecordElementInterface> dient als constructor voor het creëren van een DataElement voor een uitbreidingsrecord-interface aan de hand van een ara::core::InstanceSpecifier [SWS_DM_02158]. De declaratie bevindt zich in de scope <ExtendedDataRecord-Namespace>::<ExtendedDataRecordElementInterface> en vereist het includeren van het headerbestand #include "<ExtendedDataRecordElementShortname>.h" AUTOSAR_AP_SWS_Diagnostics §8.49.2.2.1.6.

De synchrone aanroep vereist twee invoerparameters [SWS_DM_02158]:

  • instanceSpec (ara::core::InstanceSpecifier): Identifier van de concrete service-instantie in het AUTOSAR-model.
  • concurrencyType (ara::diag::ConcurrencyType): Bepaalt of de interface thread-safe (kConcurrent) of niet-thread-safe (kNotConcurrent) wordt geïnstantieerd.

Gelijktijdigheid en foutveiligheid

De constructorfunctie zelf is gedeclareerd als noexcept en gespecificeerd als thread-safe en exception safe [SWS_DM_02158]. Interpretatie: Aangezien de functie als noexcept is gedefinieerd, zullen modellerings- en initialisatiefouten vermoedelijk niet via C++-exceptions, maar via de in het Adaptive-framework gedefinieerde violations worden gesignaleerd [SWS_DM_02158]. Vraag Q-9ce91764c3e8364e (open)

Foutafhandeling en modelviolations

Bij een foutieve modelconfiguratie of ongeldige identifiers treden specifieke violations op [SWS_DM_02158]:

  • InstanceSpecifierMappingIntegrityViolation: De identifier kan in de context van het proces niet worden opgelost of verwijst niet naar een PortPrototype.
  • PortInterfaceMappingViolation: Een door DiagnosticExtendedDataRecordInterface getypeerde PortPrototype wordt niet door een DiagnosticDataPortMapping gerefereerd.
  • ProcessMappingViolation: Een passende InstanceRef bestaat, maar er is geen passend gemodelleerd proces voor het runtimeproces gevonden.
  • InstanceSpecifierAlreadyInUseViolation: De constructor is aangeroepen met een InstanceSpecifier die in het proces reeds in gebruik is.

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

Implementer's Guide volgt (complexiteit I1)

Header-Datei#include "<ExtendedDataRecordElementShortname>.h"
Scopeclass <ExtendedDataRecord-Namespace>::<ExtendedDataRecordElementInterface>
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 DiagnosticExtendedDataRecordInterface 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
instanceSpecThe specifier of a specific instance of a service.
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_02158
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02158@rel:R25-11#3ab84c0e
Content hash
3ab84c0e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02158
Status: valid/unmigrated Version: rel:R25-11#dc93a230 Versionshistorie & Revisions (1 transition)
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_02158@rel:R25-11#dc93a230
Point-in-Time History:
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_02152] Upstream: RS_AP_00119, RS_AP_00139, RS_Diag_04169, RS_Diag_04224

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

De functie Offer activeert het doorsturen van diagnoseverzoeken door de Diagnostic Management Daemon (DM) naar de betreffende instantie van de handler [SWS_DM_02152]. Zij wordt parameterloos aangeroepen en levert synchroon een ara::core::Result<void> terug, gedeclareerd als noexcept en gespecificeerd als exception-safe [SWS_DM_02152].

Voor een correct gebruik en de foutafhandeling gelden de volgende richtlijnen:

  • Retourwaarde en fouten: In het geval van succes bevat het resultaat een lege waarde. Werd de service voor deze handler-instantie al eerder geregistreerd, dan mislukt de aanroep en levert deze de foutcode DiagOfferErrc::kAlreadyOffered op met rollback-semantiek [SWS_DM_02152]. Verwante foutdomeinen definiëren voor deze toestand eveneens de foutcode kAlreadyOffered [SWS_DM_00514] [SWS_DM_00560].
  • Concurrency: In tegenstelling tot andere diagnose-handlers, die vaak als niet thread-safe zijn aangeduid (zoals bijvoorbeeld in [SWS_DM_00557]), is deze methode expliciet gedefinieerd als thread-safe [SWS_DM_02152].
  • Interactie in het systeem: Zolang een interface door de applicatie nog niet middels Offer beschikbaar is gesteld, reageert de DM afhankelijk van de context met gedefinieerde standaard- resp. vervangende waarden, zoals bijvoorbeeld met de status “Not ready” bij DoIP-PowerMode-opvragingen [SWS_DM_01525] of vervangende waarden voor groeps-ID's [SWS_DM_01527]. Bovendien benadrukt de specificatie dat diagnose-offer-functies specifiek zijn voor ara::diag en niet mogen worden verward met ara::com::Offer AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”.

Interpretatie: Het synchrone terugkoppelingsgedrag van Offer zal er vermoedelijk voor zorgen dat de handler-registratie vóór de ontvangst van opvolgende UDS-verzoeken volledig is voltooid. Vraag Q-e6b2916cf4887164 (open)

Deze tekst is gegenereerd door een AI op basis van de AUTOSAR-specificatie R25-11.

Implementer's Guide volgt (complexiteit I2)

Header-Datei#include "<ExtendedDataRecordElementShortname>.h"
Scopeclass <ExtendedDataRecord-Namespace>::<ExtendedDataRecordElementInterface>
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
ara::core::Result< void >• If successful: an ara::core::Result containing a ara:: core::Result::value_type • If unsuccessful: an ara::core::Result containing an ara:: core::Result::error_type i.e. a corresponding ara:: diag::DiagOfferErrc

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_02152
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02152@rel:R25-11#bf6b2239
Content hash
bf6b2239
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02152
Status: valid/unmigrated Version: rel:R25-11#98647892 Versionshistorie & Revisions (1 transition)
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_02152@rel:R25-11#98647892
Point-in-Time History:
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_02156] Upstream: RS_AP_00114, RS_AP_00127, RS_AP_00128, RS_AP_00138

virtual ara::core::Future< <ExtendedDataRecordElement>ReadOutput > Read (const ara::diag::MetaInfo &metaInfo, ara::diag::CancellationHandler cancellationHandler) noexcept=0;

Provision of a Read ExtendedDataRecordElement. The data fetched by this method is stored in non-volatile memory by the DM and therefore always a value needs to be returned. Not available data at the time of the method call shall be filled with a filling pattern, e.g 0xFF by the implementation of this method (DiagnosticExtendedDataRecordInterface in the role provide).

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

Gebruik en semantiek

De zuiver virtuele methode Read wordt aangeroepen door het Diagnostic Management (DM) om de gegevens van een ExtendedDataRecordElement op te vragen uit de applicatie ([SWS_DM_02156]). Aangezien het DM de opgevraagde gegevens permanent opslaat in het niet-vluchtige geheugen, moet de methode altijd een waarde leveren. Als er op het tijdstip van aanroepen geen gegevens beschikbaar zijn, moeten deze door de implementatie worden opgevuld met een vulpatroon zoals 0xFF ([SWS_DM_02156]).

De uitvoering verloopt asynchroon en retourneert een ara::core::Future die bij succes de structuur ReadOutput inkapselt ([SWS_DM_02154]). De aanroep geeft de volgende parameters mee ([SWS_DM_02156]):

  • metaInfo: Geeft meta-informatie van het onderliggende diagnoseverzoek door.
  • cancellationHandler: Maakt het mogelijk om een afbreking op te vragen via cancellationHandler.IsCanceled() en om een notificatiefunctie te registreren via cancellationHandler.SetNotifier().

Foutafhandeling

In geval van een fout stelt de Future een negatieve UDS-responscode (DiagUdsNrcErrc) of een applicatiespecifieke fout (ApApplicationError) beschikbaar ([SWS_DM_02156], AUTOSAR_AP_SWS_Diagnostics §7.3.2.6.1 “NRCs created by application”). Indien de benodigde service-interface nog niet of niet meer via offer() beschikbaar wordt gesteld, antwoordt het DM met NRC 0x94 (ResourceTemporarilyNotAvailable) ([SWS_DM_01257]). Daarnaast meldt DiagOfferErrc::kAlreadyOffered wanneer de service al wordt aangeboden ([SWS_DM_02156]).

Gelijktijdigheid en wisselwerking

De methode is gespecificeerd als uitzonderingsveilig (exception safe) ([SWS_DM_02156]). De thread-safety is voorwaardelijk en implementatiegedefinieerd (implementation defined) ([SWS_DM_02156]). Dit onderscheidt Read voor Extended Data Records van leesoperaties op reguliere gegevenselementen ([SWS_DM_00596]) of data identifiers ([SWS_DM_00640]), die uitdrukkelijk niet-thread-safe zijn.

Deze tekst is gegenereerd door een AI-systeem op basis van de specificaties van release R25-11.

Implementer's Guide volgt (complexiteit I1)

Header-Datei#include "<ExtendedDataRecordElementShortname>.h"
Scopeclass <ExtendedDataRecord-Namespace>::<ExtendedDataRecordElementInterface>
Exception-Sicherheitexception safe
Thread-Sicherheitconditional Thread safety is implementation defined

Parameter (in)

ParameterBeschreibung
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< {<extended-data-record-element-name-upper-camel> }ReadOutput >• If successful: an ara::core::Future containing an ReadOutput object as per [SWS_DM_02154] • If unsuccessful: an ara::core::Future containing a corresponding DiagUdsNrcErrc or ApApplicationError.

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_02156
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02156@rel:R25-11#fa28d29f
Content hash
fa28d29f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02156
Status: valid/unmigrated Version: rel:R25-11#29b32782 Versionshistorie & Revisions (1 transition)
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_02156@rel:R25-11#29b32782
Point-in-Time History:
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_02153] 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: 7a0fc3b7b561 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik en aanroepcontext

De functie StopOffer wordt aangeroepen op een instantie van de Extended-Data-Record-interface (<ExtendedDataRecord-Namespace>::<ExtendedDataRecordElementInterface>), die via de header #include "<ExtendedDataRecordElementShortname>.h" wordt geïncludeerd [SWS_DM_02153]. De aanroep geschiedt synchroon, accepteert geen parameters en heeft geen retourwaarde (void).

Het doel van de methode is om het doorsturen van binnenkomende verzoekberichten vanuit Diagnostic Management (DM) naar het betreffende Extended-Data-Record-element te deactiveren [SWS_DM_02153]. Na de uitvoering leidt de DM geen nieuwe diagnoseverzoeken meer door naar de bijbehorende handler.

Foutafhandeling en gelijktijdigheid

De functie is gedeclareerd met de identifier noexcept en gespecificeerd als uitzonderingsveilig (exception safe) [SWS_DM_02153]. Specifieke foutcodes, retourwaarden of notificaties aan foutbewakingen zijn in de payload niet gedefinieerd; in geval van fouten worden geen exceptions opgeworpen.

Wat betreft concurrency is de methode uitdrukkelijk geclassificeerd als thread-safe (thread-safe) [SWS_DM_02153]. Dit vormt een bijzonderheid, aangezien verwante StopOffer-interfaces in ara::diag – zoals bijvoorbeeld voor routines [SWS_DM_00558], data-elementen [SWS_DM_00617] of monitors [SWS_DM_01089] – gespecificeerd zijn als niet thread-safe. Reeds in verwerking zijnde verzoeken zullen vermoedelijk vóór de definitieve stop nog worden voltooid of verworpen. Vraag Q-82e9d44f8ac1969d (open)

Interactie binnen Diagnostic Management

De naamgeving volgt het uniforme servicepatroon in AUTOSAR Adaptive, waarbij functionele eenheden hun beschikbaarheid regelen via Offer en StopOffer AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”. Het element sluit daarmee aan bij vergelijkbare interfaces van de DM, zoals voor generieke UDS-diensten [SWS_DM_00620], data-identifiers [SWS_DM_00600], security access [SWS_DM_00767] of ECU-reset-verzoeken [SWS_DM_01017].

Deze gebruiksinstructie is gegenereerd door een AI op basis van de specificatie AUTOSAR Adaptive R25-11.

Implementer's Guide volgt (complexiteit I2)

Header-Datei#include "<ExtendedDataRecordElementShortname>.h"
Scopeclass <ExtendedDataRecord-Namespace>::<ExtendedDataRecordElementInterface>
Exception-Sicherheitexception safe
Thread-Sicherheitthread-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_02153
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02153@rel:R25-11#befc1e2f
Content hash
befc1e2f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02153
Status: valid/unmigrated Version: rel:R25-11#0c3fd27f Versionshistorie & Revisions (1 transition)
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_02153@rel:R25-11#0c3fd27f
Point-in-Time History:
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_02148] Upstream: RS_AP_00147

<ExtendedDataRecordElementInterface3> & operator= (const <ExtendedDataRecordElementInterface3> &other)=delete;

Copy assignment constructor deletion

Header-Datei#include "<ExtendedDataRecordElementShortname>.h"
Scopeclass <ExtendedDataRecord-Namespace>::<ExtendedDataRecordElementInterface>

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

Record
AUTOSAR/AP/record/SWS_DM_02148
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02148@rel:R25-11#edccd063
Content hash
edccd063
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02148
Status: valid/unmigrated Version: rel:R25-11#085b2936 Versionshistorie & Revisions (1 transition)
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_02148@rel:R25-11#085b2936
Point-in-Time History:
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_02150] Upstream: RS_AP_00147

<ExtendedDataRecordElementInterface5> & operator= ( <ExtendedDataRecordElementInterface5> &&other)=delete;

Move assignment constructor

Header-Datei#include "<ExtendedDataRecordElementShortname>.h"
Scopeclass <ExtendedDataRecord-Namespace>::<ExtendedDataRecordElementInterface>

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

Record
AUTOSAR/AP/record/SWS_DM_02150
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02150@rel:R25-11#aa2002e1
Content hash
aa2002e1
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02150
Status: valid/unmigrated Version: rel:R25-11#19edc7c0 Versionshistorie & Revisions (1 transition)
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_02150@rel:R25-11#19edc7c0
Point-in-Time History:
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 ~<ExtendedDataRecordElementInterface> [SWS_DM_02151] Upstream: RS_Diag_04169, RS_AP_00134

virtual ~<ExtendedDataRecordElementInterface6> () noexcept;

Destruction of a DataElement

Header-Datei#include "<ExtendedDataRecordElementShortname>.h"
Scopeclass <ExtendedDataRecord-Namespace>::<ExtendedDataRecordElementInterface>
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_02151
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02151@rel:R25-11#39f26645
Content hash
39f26645
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02151
Status: valid/unmigrated Version: rel:R25-11#31ab9402 Versionshistorie & Revisions (1 transition)
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_02151@rel:R25-11#31ab9402
Point-in-Time History:
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

Documentatie van constanten / variabelen

variabele <ExtendedDataRecordElementOutArg> [SWS_DM_02155] Upstream: RS_Diag_04224, RS_Diag_04169

<ExtendedDataRecordElementOutArgType> <ExtendedDataRecordElementOutArg>;

Member declaration representing an out argument in an Output.

Header-Datei#include "<ExtendedDataRecordElementShortname>.h"
Scopeclass <ExtendedDataRecord-Namespace>::<ExtendedDataRecordElementInterface>
Symbol<ExtendedDataRecordElementOutArg>
Typ<ExtendedDataRecordElementOutArgType>

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

Record
AUTOSAR/AP/record/SWS_DM_02155
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02155@rel:R25-11#262675e9
Content hash
262675e9
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02155
Status: valid/unmigrated Version: rel:R25-11#db27b360 Versionshistorie & Revisions (1 transition)
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_02155@rel:R25-11#db27b360
Point-in-Time History:
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