DEENESPTFRRUARHIKOZHNL

classe <DataIdentifier-Namespace>::<DataIdentifierInterface>

[SWS_DM_00601] Upstream: RS_Diag_04169

class <DataIdentifierInterface> {...};

DiagnosticDataIdentifierInterface class

Header-Datei#include "<DataIdentifierDirectoryPath>/<DataIdentifierShortname>.h"
Forwarding-Header#include "<DataIdentifierDirectoryPath>/<DataIdentifierShortname>/<DataIdentifierShortname>_ fwd.h"
Scopenamespace <DataIdentifier-Namespace>

Guide utilisateurGÉNÉRÉ PAR IA

Permet à l'application de répondre aux requêtes de lecture et d'écriture de diagnostic pour des identifiants de données spécifiques.
GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 7fb3639fc276 Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Permet à l'application de répondre aux requêtes de lecture et d'écriture de diagnostic pour des identifiants de données spécifiques.

L'interface <DataIdentifier-Namespace>::<DataIdentifierInterface> permet aux applications adaptatives de mettre à disposition des identifiants de données de diagnostic spécifiques au modèle auprès du Diagnostic Management [SWS_DM_00585]. Après la création, Offer() active le transfert des requêtes, qui sont traitées de manière asynchrone via Read() ou Write() et auxquelles il est répondu au besoin avec des codes d'erreur UDS [SWS_DM_00599] [SWS_DM_00640]. Comme l'instance n'est ni copiable ni déplaçable, le service est explicitement arrêté via StopOffer() avant la destruction [SWS_DM_01665] [SWS_DM_00600].

Contexte

La classe C++ <DataIdentifier-Namespace>::<DataIdentifierInterface> fait office d'interface fonctionnelle pour les identifiants de données de diagnostic (Data Identifiers, DID) dans le module diag de l'Adaptive Platform SWS Diagnostics p. 68. Elle relie la couche applicative adaptative au Diagnostic Management (DM) central. Le Diagnostic Management reçoit les requêtes de diagnostic externes et les transmet à l'instance enregistrée [SWS_DM_00599]. Le logiciel applicatif fournit l'implémentation concrète via des classes dérivées pour interroger ou mettre à jour des contenus de données par le biais d'opérations de lecture ou d'écriture [SWS_DM_00640] [SWS_DM_00598].

Cycle de vie

La création s'effectue via le constructeur paramétré en transmettant un ara::core::InstanceSpecifier et le mode de concurrence ara::diag::ConcurrencyType [SWS_DM_00585]. Ce dernier définit si les appels vers l'instance peuvent être traités de manière concurrente (kConcurrent) ou non concurrente (kNotConcurrent) [SWS_DM_00585]. Comme une instance est fermement liée à sa configuration de modèle, le constructeur de copie ainsi que le constructeur de déplacement sont explicitement supprimés [SWS_DM_01665] [SWS_DM_01666] ; il en va de même pour les opérateurs d'affectation par copie et par déplacement [SWS_DM_01663] [SWS_DM_01664].

Après l'instanciation, l'interface se trouve à l'état inactif. Ce n'est que par l'appel de Offer() que le transfert des requêtes de diagnostic par le Diagnostic Management est activé [SWS_DM_00599]. La méthode StopOffer() arrête à nouveau ce transfert [SWS_DM_00600]. La libération des ressources s'effectue via le destructeur virtuel [SWS_DM_00586]. Interprétation : avant la destruction de l'objet, StopOffer() devrait typiquement être appelé afin d'empêcher de manière ordonnée les transferts en cours ou entrants du DM. Question Q-3710c559625978c9 (ouverte)

Parcours d'utilisation

Le déroulement régulier comprend l'instanciation, l'enregistrement du service, le traitement asynchrone des requêtes et la désactivation ultérieure :

  1. Instanciation : l'application crée une instance de l'interface en indiquant le InstanceSpecifier et le paramètre ConcurrencyType souhaité [SWS_DM_00585].
  2. Activation du service : l'application appelle Offer(), ce qui permet au Diagnostic Management de délivrer des requêtes à ce gestionnaire [SWS_DM_00599].
  3. Traitement des requêtes : lors des accès en lecture, le DM appelle la méthode purement virtuelle Read() [SWS_DM_00640], et lors des accès en écriture Write() [SWS_DM_00598]. L'application peut surveiller les événements d'annulation via le cancellationHandler transmis. Les résultats sont mis à disposition de manière asynchrone sous forme de ara::core::Future, qui contient pour Read() un objet ReadOutput avec les données de sortie [SWS_DM_00579] [SWS_DM_00640] [SWS_DM_80013].
  4. Arrêt du service : par l'appel de StopOffer(), le transfert est arrêté [SWS_DM_00600] avant que l'objet ne soit détruit [SWS_DM_00586].
Déroulement de la mise à disposition et du traitement des requêtes de Data IdentifierApplicationDataIdentifierInterfaceGestion des diagnosticsKonstruktor(instanceSpec, concurrencyType)Offer()Weiterleitung aktivierenResult<void> (Erfolg)Use Case: Diagnoseanfrage durch DMRead(metaInfo, cancellationHandler)Future<ReadOutput>Use Case: Arrêt du service et démantèlementStopOffer()Weiterleitung deaktivieren~<DataIdentifierInterface>()

Diagramme de séquence : déroulement typique de la mise à disposition de DID, de l'initialisation à la désactivation en passant par la réponse asynchrone aux requêtes. Sources : [SWS_DM_00585], [SWS_DM_00599], [SWS_DM_00640], [SWS_DM_00600], [SWS_DM_00586].

Scénarios d'erreur

Dès la création de l'objet, des erreurs de modélisation peuvent entraîner des violations : si des liaisons de port ou de processus sont manquantes, InstanceSpecifierMappingIntegrityViolation, PortInterfaceMappingViolation ou ProcessMappingViolation surviennent [SWS_DM_00585]. Si le même InstanceSpecifier est réutilisé dans le même processus, le framework signale InstanceSpecifierAlreadyInUseViolation [SWS_DM_00585].

Si Offer() est appelé alors que le service est déjà proposé, l'appel échoue et renvoie via le ara::core::Result le code d'erreur DiagOfferErrc::kAlreadyOffered [SWS_DM_00599]. Si l'exécution de Read() ou de Write() échoue, l'implémentation transmet les erreurs de manière asynchrone dans le Future au moyen de codes d'erreur UDS ISO 14229-1 (DiagUdsNrcErrc) ou de ApApplicationError [SWS_DM_00640] [SWS_DM_00598] spécifiques à l'application. En matière de sécurité vis-à-vis des exceptions, le constructeur et les méthodes de traitement sont spécifiés comme exception safe [SWS_DM_00585] [SWS_DM_00599] [SWS_DM_00640] [SWS_DM_00598], tandis que le destructeur n'est pas désigné comme exception safe [SWS_DM_00586].

Ce guide s'appuie sur la spécification AUTOSAR pour l'Adaptive Platform (Release R25-11).

Carte des membres

Diagramme de classes

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

G n_DataIdentifier_Namespace____DataIdentifierInterface_960 <DataIdentifierInterface> + <DataIdentifierOutArg> + Offer() + Read() + StopOffer() + Write() + operator=() + <DataIdentifierInterface>() + ~<DataIdentifierInterface>()

Vue détaillée

Sélectionnez une entrée dans le plan.

Méthodes

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

Surcharges <DataIdentifierInterface> 3
<DataIdentifierInterface1> (ara::core::InstanceSpecifier instanceSpec, ara::diag::ConcurrencyType concurrencyType) noexcept; SWS_DM_00585
<DataIdentifierInterface2> (const <DataIdentifierInterface2> &other)=delete; SWS_DM_01665
<DataIdentifierInterface4> ( <DataIdentifierInterface4> &&other)=delete; SWS_DM_01666
Offer fonction

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

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

Provision of a reading DataIdentifier (DiagnosticDataIdentifierInterface in the role read).

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

This StopOffer will disable the forwarding of request messages from DM

void StopOffer () noexcept;
Write fonction

Provision of a writing DataIdentifier (DiagnosticDataIdentifierInterface in the role write).

virtual ara::core::Future< void > Write ( {<data-identifier-in-arg-derived-type-0toN>} {<data-identifier-in-arg-symbol-0toN>}, const ara::diag::MetaInfo &metaInfo, ara::diag::CancellationHandler cancellationHandler) noexcept=0;

Destruction of a DataIdentifier

virtual ~<DataIdentifierInterface6> ();

Opérateurs

operator= fonction 2

Copy assignment constructor deletion

Surcharges = 2
<DataIdentifierInterface3> & operator= (const <DataIdentifierInterface3> &other)=delete; SWS_DM_01663
<DataIdentifierInterface5> & operator= ( <DataIdentifierInterface5> &&other)=delete; SWS_DM_01664

Constantes

Member declaration representing an out argument in an Output.

<DataIdentifierOutArgType> <DataIdentifierOutArg>;

Types imbriqués

Documentation des méthodes

fonction <DataIdentifierInterface> [SWS_DM_00585] Upstream: RS_AP_00137, RS_AP_00170, RS_AP_00171, RS_AP_00172, RS_AP_00173

<DataIdentifierInterface1> (ara::core::InstanceSpecifier instanceSpec, ara::diag::ConcurrencyType concurrencyType) noexcept;

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

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : c2e49b8d93ab Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Utilisation

La fonction constructeur <DataIdentifierInterface> sert à instancier un identificateur de données à partir d'un ara::core::InstanceSpecifier [SWS_DM_00585]. La déclaration s'effectue au sein de l'espace de noms <DataIdentifier-Namespace> via le fichier d'en-tête #include "<DataIdentifierDirectoryPath>/<DataIdentifierShortname>.h" [SWS_DM_00585]. L'appel synchrone est spécifié comme noexcept et possède les propriétés « exception safe » ainsi que « thread-safe » [SWS_DM_00585].

La fonction accepte les paramètres d'entrée suivants [SWS_DM_00585] :

  • instanceSpec (ara::core::InstanceSpecifier) : identificateur de l'instance concrète d'un service [SWS_DM_00585].
  • concurrencyType (ara::diag::ConcurrencyType) : définit si l'interface est exploitée de manière sûre du point de vue des threads avec kConcurrent ou non sûre du point de vue des threads avec kNotConcurrent [SWS_DM_00585].

Gestion des erreurs et règles de modélisation

La fonction ne renvoie aucune valeur et ne lève aucune exception. Des erreurs dans la configuration ou la modélisation entraînent à la place des violations définies [SWS_DM_00585] :

  • InstanceSpecifierMappingIntegrityViolation : le instanceSpec ne peut pas être résolu dans le contexte de l'exécutable ou ne renvoie pas à un PortPrototype [SWS_DM_00585].
  • PortInterfaceMappingViolation : un PortPrototype typé par DiagnosticDataIdentifierInterface n'est pas référencé par un DiagnosticDataPortMapping [SWS_DM_00585].
  • ProcessMappingViolation : pour la référence d'instance, il n'existe aucun processus modélisé correspondant pour le processus d'exécution actuel [SWS_DM_00585].
  • InstanceSpecifierAlreadyInUseViolation : le constructeur a été appelé avec un instanceSpec qui est déjà utilisé dans le processus actuel [SWS_DM_00585].

Interprétation : la fonction étant déclarée comme noexcept, les violations constatées devraient être traitées de manière interne au framework comme des erreurs critiques d'initialisation. Question Q-8616025446bf33f2 (ouverte)

concurrence

La fonction constructeur elle-même est exécutée de manière sûre du point de vue des threads [SWS_DM_00585]. L'argument concurrencyType permet de contrôler si des appels d'interface en aval de l'instance peuvent avoir lieu de manière concurrente [SWS_DM_00585].

Cette note d'utilisation a été générée automatiquement sur la base de la spécification.

Guide de l'implémenteur à venir (complexité I1)

Header-Datei#include "<DataIdentifierDirectoryPath>/<DataIdentifierShortname>.h"
Scopeclass <DataIdentifier-Namespace>::<DataIdentifierInterface>
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 DiagnosticDataIdentifierInterface 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_00585
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00585@rel:R25-11#b48c1d9d
Content hash
b48c1d9d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00585
Status: valid/unmigrated Version: rel:R25-11#4e8f5fe5 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_00585@rel:R25-11#4e8f5fe5
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#424df92c2026-09-30
  • R19-11rel:R19-11#420e87cb2026-10-14
  • R20-11rel:R20-11#6d8ab4df2026-10-14
  • R21-11rel:R21-11#c7e8234c2026-10-14
  • R22-11rel:R22-11#5168b3b22026-10-14
  • R23-11rel:R23-11#c7617fcf2026-10-14
  • R24-11rel:R24-11#9629e2942026-10-14
  • R25-11rel:R25-11#4e8f5fe52026-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

fonction <DataIdentifierInterface> [SWS_DM_01665] Upstream: RS_AP_00147

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

Copy constructor deletion

Header-Datei#include "<DataIdentifierDirectoryPath>/<DataIdentifierShortname>.h"
Scopeclass <DataIdentifier-Namespace>::<DataIdentifierInterface>

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

Record
AUTOSAR/AP/record/SWS_DM_01665
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01665@rel:R25-11#77c57992
Content hash
77c57992
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01665
Status: valid/unmigrated Version: rel:R25-11#d2f9729a 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_01665@rel:R25-11#d2f9729a
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#ae00ab682026-09-30
  • R23-11rel:R23-11#c667bc4b2026-10-14
  • R24-11rel:R24-11#fa08505b2026-10-14
  • R25-11rel:R25-11#d2f9729a2026-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

fonction <DataIdentifierInterface> [SWS_DM_01666] Upstream: RS_AP_00147

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

Move constructor

Header-Datei#include "<DataIdentifierDirectoryPath>/<DataIdentifierShortname>.h"
Scopeclass <DataIdentifier-Namespace>::<DataIdentifierInterface>

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

Record
AUTOSAR/AP/record/SWS_DM_01666
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01666@rel:R25-11#4b9832bf
Content hash
4b9832bf
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01666
Status: valid/unmigrated Version: rel:R25-11#3ab93d5e 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_01666@rel:R25-11#3ab93d5e
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#37eed7f82026-09-30
  • R23-11rel:R23-11#eaf209332026-10-14
  • R24-11rel:R24-11#8925cf032026-10-14
  • R25-11rel:R25-11#3ab93d5e2026-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

fonction Offer [SWS_DM_00599] 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

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : ebb465f1e58b Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Utilisation et contexte d'appel

La méthode synchrone Offer() permet au Diagnostic Management (DM) de transférer les requêtes de diagnostic entrantes à l'instance correspondante de <DataIdentifierInterface> ([SWS_DM_00599]). La fonction ne prend aucun paramètre d'entrée et est spécifiée comme noexcept ([SWS_DM_00599]). Interprétation : l'appel devrait typiquement avoir lieu pendant la phase d'initialisation de l'application, étant donné que le DM ne peut délivrer aucune requête avant la mise à disposition. Question Q-4ba81ff234a09f46 (ouverte)

Gestion des erreurs et valeurs de retour

ara::core::Result<void> sert de valeur de retour ([SWS_DM_00599]). Si l'enregistrement a réussi, le résultat ne contient aucune valeur. Si le gestionnaire a déjà été mis à disposition auparavant, l'appel échoue et renvoie le code d'erreur DiagOfferErrc::kAlreadyOffered avec une sémantique de retour arrière ([SWS_DM_00599] ; voir [SWS_DM_00514]).

Concurrence et restrictions

La fonction garantit la sécurité vis-à-vis des exceptions (exception safe), mais est expressément spécifiée comme non sûre pour les threads (not thread-safe) ([SWS_DM_00599]). Les appels parallèles sur la même instance doivent être synchronisés par l'application.

Interaction

Le patron de mise à disposition correspond à l'approche d'activation uniforme au sein du DM : des méthodes Offer() analogues existent pour les identifiants génériques ([SWS_DM_00638]), les éléments de données ([SWS_DM_00597]), les routines ([SWS_DM_00557], [SWS_DM_00594]) et les services DoIP ([SWS_DM_00725], [SWS_DM_00735]). Tant que Offer() n'a pas été exécuté, le DM ne transfère aucune requête au gestionnaire et répond avec des valeurs par défaut pour les services DoIP ([SWS_DM_01525], [SWS_DM_01527]).

Cette note d'utilisation a été générée automatiquement sur la base de la spécification AUTOSAR Adaptive Release R25-11.

Guide de l'implémenteur à venir (complexité I2)

Header-Datei#include "<DataIdentifierDirectoryPath>/<DataIdentifierShortname>.h"
Scopeclass <DataIdentifier-Namespace>::<DataIdentifierInterface>
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-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_00599
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00599@rel:R25-11#9b129034
Content hash
9b129034
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00599
Status: valid/unmigrated Version: rel:R25-11#b1695320 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_00599@rel:R25-11#b1695320
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#8a80b11d2026-09-30
  • R19-11rel:R19-11#ca894da82026-10-14
  • R20-11rel:R20-11#cb4154752026-10-14
  • R21-11rel:R21-11#1465258e2026-10-14
  • R22-11rel:R22-11#cb17bfe82026-10-14
  • R23-11rel:R23-11#209914022026-10-14
  • R24-11rel:R24-11#713a92052026-10-14
  • R25-11rel:R25-11#b16953202026-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

fonction Read [SWS_DM_00640] Upstream: RS_AP_00114, RS_AP_00127, RS_AP_00128, RS_AP_00138

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

Provision of a reading DataIdentifier (DiagnosticDataIdentifierInterface in the role read).

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 85f20519a648 Provenance
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Utilisation

La méthode Read sert à la fourniture de données d'un identifiant de données de diagnostic (DataIdentifier) dans le rôle de lecture d'un DiagnosticDataIdentifierInterface [SWS_DM_00640]. L'appel est effectué de manière asynchrone par le Diagnostic Manager (DM) lors de requêtes de diagnostic externes AUTOSAR_AP_SWS_Diagnostics p. 143 §7.3.2.6.1 « NRCs created by application ». Sont transmis comme paramètres metaInfo pour l'évaluation des propriétés de la requête ainsi qu'un cancellationHandler [SWS_DM_00640]. L'application de traitement peut interroger l'état d'annulation via cancellationHandler.IsCanceled() ou enregistrer, au moyen de cancellationHandler.SetNotifier(), un rappel pour le cas où la session serait prématurément interrompue [SWS_DM_00640]. Le résultat est renvoyé de manière asynchrone sous la forme d'un ara::core::Future contenant un objet ReadOutput [SWS_DM_00640], [SWS_DM_00579].

Gestion des erreurs

La fonction est spécifiée comme exception safe et ne doit propager aucune exception vers l'extérieur [SWS_DM_00640]. Si une erreur survient lors de la récupération des données, l'application renvoie dans le ara::core::Future une valeur de retour négative sous la forme d'un code d'erreur UDS approprié (NRC selon l'ISO 14229-1 via DiagUdsNrcErrc) ou d'un ApApplicationError [SWS_DM_00640], AUTOSAR_AP_SWS_Diagnostics p. 143 §7.3.2.6.1 « NRCs created by application ».

Concurrence et interaction

La fonction d'interface est not thread-safe par défaut [SWS_DM_00640]. Une exécution concurrente d'accès en lecture et en écriture par le Diagnostic Manager est régie par le type ara::diag::DataIdentifierConcurrencyType::readWrite, qui est préconfiguré par défaut sur kNotConcurrent [SWS_DM_00939]. Des opérations de lecture apparentées existent pour des éléments de données individuels via DiagnosticDataElementInterface [SWS_DM_00596] ainsi que pour des identifiants génériques [SWS_DM_00636].

Ce texte a été généré par une IA sur la base de la spécification AUTOSAR Adaptive R25-11.

Guide de l'implémenteur à venir (complexité I1)

Header-Datei#include "<DataIdentifierDirectoryPath>/<DataIdentifierShortname>.h"
Scopeclass <DataIdentifier-Namespace>::<DataIdentifierInterface>
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

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< {<data-identifier-name>}ReadOutput >• If successful: an ara::core::Future containing a ReadOutput object as per [SWS_DM_00579] • If unsuccessful: an ara::core::Future containing a corresponding DiagUdsNrcErrc or ApApplicationError.

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_00640
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00640@rel:R25-11#cc18f850
Content hash
cc18f850
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00640
Status: valid/unmigrated Version: rel:R25-11#09d4ff6e 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_00640@rel:R25-11#09d4ff6e
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#2edc90672026-09-30
  • R19-11rel:R19-11#6713bf032026-10-14
  • R20-11rel:R20-11#8a573eb02026-10-14
  • R21-11rel:R21-11#5d209a572026-10-14
  • R22-11rel:R22-11#d59456d32026-10-14
  • R23-11rel:R23-11#d388add12026-10-14
  • R24-11rel:R24-11#05b336912026-10-14
  • R25-11rel:R25-11#09d4ff6e2026-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

fonction StopOffer [SWS_DM_00600] Upstream: RS_Diag_04169

void StopOffer () noexcept;

This StopOffer will disable the forwarding of request messages from DM

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 3f19138aee59 Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

La méthode StopOffer désinstalle le routage des requêtes de diagnostic entrantes du Diagnostic Management (DM) vers l'instance d'interface concrète [SWS_DM_00600]. Par cet appel, l'application adaptative signale qu'elle n'est temporairement ou définitivement plus prête à traiter des requêtes pour ce DataIdentifier.

Utilisation et sémantique

L'appel s'effectue de manière synchrone, est sans paramètre et ne renvoie aucune valeur de retour [SWS_DM_00600]. Le fichier d'interface généré #include "<DataIdentifierDirectoryPath>/<DataIdentifierShortname>.h" doit être inclus en tant qu'en-tête [SWS_DM_00600]. Le nommage suit le modèle connu de ara::com, mais constitue une interface autonome du domaine de diagnostic AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 « Monitors ».

Gestion des erreurs et concurrence

  • Sécurité vis-à-vis des exceptions : la fonction est déclarée avec noexcept et garantit une sécurité totale vis-à-vis des exceptions (exception safe) [SWS_DM_00600]. Aucune exception n'est levée.
  • Sécurité des threads : l'opération est spécifiée comme not thread-safe [SWS_DM_00600]. L'appel doit s'effectuer de manière synchronisée afin qu'aucun accès parallèle à la même instance d'interface n'ait lieu.

Interaction

Le comportement correspond au modèle uniforme de désactivation du Diagnostic Management, tel qu'il est également défini de manière analogue pour des interfaces apparentées telles que les routines [SWS_DM_00558], les éléments de données génériques [SWS_DM_00639] ou les services de téléchargement [SWS_DM_00793]. Après une désactivation réussie, les requêtes entrantes du DM vers ce DataIdentifier ne sont plus transmises au gestionnaire d'application [SWS_DM_00600] ; le DM devrait ensuite générer des codes de réponse négatifs correspondants. Question Q-d301740d097f9946 (ouverte)

Cette note d'utilisation est basée sur les stipulations de la spécification AUTOSAR AP R25-11.

Guide de l'implémenteur à venir (complexité I2)

Header-Datei#include "<DataIdentifierDirectoryPath>/<DataIdentifierShortname>.h"
Scopeclass <DataIdentifier-Namespace>::<DataIdentifierInterface>
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_00600
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00600@rel:R25-11#a006d768
Content hash
a006d768
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00600
Status: valid/unmigrated Version: rel:R25-11#06007200 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_00600@rel:R25-11#06007200
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#22b516472026-09-30
  • R19-11rel:R19-11#086a57212026-10-14
  • R20-11rel:R20-11#b9a8e5302026-10-14
  • R21-11rel:R21-11#c2bf51c22026-10-14
  • R22-11rel:R22-11#008226012026-10-14
  • R23-11rel:R23-11#4ba8fcde2026-10-14
  • R24-11rel:R24-11#095120152026-10-14
  • R25-11rel:R25-11#060072002026-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

fonction Write [SWS_DM_00598] Upstream: RS_AP_00114, RS_AP_00127, RS_AP_00128, RS_AP_00138

virtual ara::core::Future< void > Write ( {<data-identifier-in-arg-derived-type-0toN>} {<data-identifier-in-arg-symbol-0toN>}, const ara::diag::MetaInfo &metaInfo, ara::diag::CancellationHandler cancellationHandler) noexcept=0;

Provision of a writing DataIdentifier (DiagnosticDataIdentifierInterface in the role write).

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 301e55bffd12 Provenance
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

La fonction d'interface sert à la mise à disposition de type sûr d'un DataIdentifier (DID) en écriture dans le rôle Write [SWS_DM_00598]. Elle est appelée par l'instance du serveur de diagnostic lors de requêtes de diagnostic entrantes du service UDS 0x2E (WriteDataByIdentifier) [SWS_DM_00186], pour autant que le DID soit pris en charge dans le système et que les vérifications de la session de diagnostic active ainsi que du niveau de sécurité aient été passées avec succès [SWS_DM_00415] [SWS_DM_00416] [SWS_DM_00417]. À la différence de la variante générique avec un span d'octets bruts [SWS_DM_00637], la méthode lie des paramètres d'entrée typés spécifiques au modèle [SWS_DM_00598].

  • Paramètres : en plus des arguments d'entrée générés, la méthode reçoit des méta-informations sur la requête via metaInfo ainsi qu'un cancellationHandler [SWS_DM_00598]. Via le gestionnaire d'annulation, l'application peut vérifier via IsCanceled si la conversation a été annulée ou enregistrer avec SetNotifier une notification pour le cas d'une annulation [SWS_DM_00598].
  • Valeur de retour et traitement des erreurs : l'exécution s'effectue de manière asynchrone via ara::core::Future<void> [SWS_DM_00598]. En cas de succès, le futur fournit le type void. En cas d'erreur, un NRC UDS approprié selon l'ISO 14229-1 au moyen de ara::diag::DiagUdsNrcErrc ou un ApplicationError correspondant doit être renvoyé [SWS_DM_00598]. La fonction est déclarée comme sûre face aux exceptions (exception safe) [SWS_DM_00598].
  • Concurrence : la méthode est classée comme non sûre pour les threads (not thread-safe) [SWS_DM_00598]. La possibilité ou non pour Diagnostic Management d'appeler en parallèle les accès en lecture et en écriture est contrôlée via l'élément de configuration readWrite dans DataIdentifierConcurrencyType [SWS_DM_00939].

Cette note d'utilisation a été créée de manière automatisée à partir de la spécification AUTOSAR.

Guide de l'implémenteur à venir (complexité I1)

Header-Datei#include "<DataIdentifierDirectoryPath>/<DataIdentifierShortname>.h"
Scopeclass <DataIdentifier-Namespace>::<DataIdentifierInterface>
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
{<data-identifier-in-arg-symbol-0toN>}The symbol name of method argument[0..N] in the ordered list of method arguments, with ClientServerOperation. direction == in given by ClientServerOperation. ArgumentDataPrototype[0..N]. shortName
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 >• If successful: an ara::core::Future containing a void. • If unsuccessful: an ara::core::Future containing a corresponding ara::diag::DiagUdsNrcErrc or Ap ApplicationError.

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_00598
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00598@rel:R25-11#0bd85399
Content hash
0bd85399
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00598
Status: valid/unmigrated Version: rel:R25-11#bdb87168 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_00598@rel:R25-11#bdb87168
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#72cee5e42026-09-30
  • R19-11rel:R19-11#0d590eb92026-10-14
  • R20-11rel:R20-11#8b24b94a2026-10-14
  • R21-11rel:R21-11#6fc896c62026-10-14
  • R22-11rel:R22-11#e1f8fedf2026-10-14
  • R23-11rel:R23-11#f147daab2026-10-14
  • R24-11rel:R24-11#911d64682026-10-14
  • R25-11rel:R25-11#bdb871682026-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

fonction operator= [SWS_DM_01663] Upstream: RS_AP_00147

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

Copy assignment constructor deletion

Header-Datei#include "<DataIdentifierDirectoryPath>/<DataIdentifierShortname>.h"
Scopeclass <DataIdentifier-Namespace>::<DataIdentifierInterface>

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

Record
AUTOSAR/AP/record/SWS_DM_01663
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01663@rel:R25-11#f57eb609
Content hash
f57eb609
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01663
Status: valid/unmigrated Version: rel:R25-11#84430c7f 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_01663@rel:R25-11#84430c7f
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#e8fc0e1d2026-09-30
  • R23-11rel:R23-11#32ce8d7c2026-10-14
  • R24-11rel:R24-11#d7cea82e2026-10-14
  • R25-11rel:R25-11#84430c7f2026-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

fonction operator= [SWS_DM_01664] Upstream: RS_AP_00147

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

Move assignment constructor

Header-Datei#include "<DataIdentifierDirectoryPath>/<DataIdentifierShortname>.h"
Scopeclass <DataIdentifier-Namespace>::<DataIdentifierInterface>

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

Record
AUTOSAR/AP/record/SWS_DM_01664
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01664@rel:R25-11#9fac0d9e
Content hash
9fac0d9e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01664
Status: valid/unmigrated Version: rel:R25-11#22a1078d 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_01664@rel:R25-11#22a1078d
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#38d959842026-09-30
  • R23-11rel:R23-11#e483c5232026-10-14
  • R24-11rel:R24-11#8aad364b2026-10-14
  • R25-11rel:R25-11#22a1078d2026-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

fonction ~<DataIdentifierInterface> [SWS_DM_00586] Upstream: RS_Diag_04169, RS_AP_00134

virtual ~<DataIdentifierInterface6> ();

Destruction of a DataIdentifier

Header-Datei#include "<DataIdentifierDirectoryPath>/<DataIdentifierShortname>.h"
Scopeclass <DataIdentifier-Namespace>::<DataIdentifierInterface>
Exception-Sicherheitnot exception 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_00586
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00586@rel:R25-11#7dd21cfb
Content hash
7dd21cfb
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00586
Status: valid/unmigrated Version: rel:R25-11#30bedd44 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_00586@rel:R25-11#30bedd44
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#5bb9ad312026-09-30
  • R19-11rel:R19-11#e08946d32026-10-14
  • R20-11rel:R20-11#74e8f77a2026-10-14
  • R21-11rel:R21-11#42adefc82026-10-14
  • R22-11rel:R22-11#6fb7460b2026-10-14
  • R23-11rel:R23-11#b224e2552026-10-14
  • R24-11rel:R24-11#0c307cd32026-10-14
  • R25-11rel:R25-11#30bedd442026-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

Documentation des constantes / variables

variable <DataIdentifierOutArg> [SWS_DM_80013] Upstream: RS_Diag_04224, RS_Diag_04169

<DataIdentifierOutArgType> <DataIdentifierOutArg>;

Member declaration representing an out argument in an Output.

Header-Datei#include "<DataIdentifierDirectoryPath>/<DataIdentifierShortname>.h"
Scopeclass <DataIdentifier-Namespace>::<DataIdentifierInterface>
Symbol<DataIdentifierOutArg>
Typ<DataIdentifierOutArgType>

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

Record
AUTOSAR/AP/record/SWS_DM_80013
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_80013@rel:R25-11#563214cb
Content hash
563214cb
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_80013
Status: valid/unmigrated Version: rel:R25-11#a48f634f Versionshistorie & Revisions (1 transition, 3 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_80013@rel:R25-11#a48f634f
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#563214cb2026-09-30
  • R24-11rel:R24-11#866631f72026-10-14
  • R25-11rel:R25-11#a48f634f2026-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