DEENESPTFRRUARHIKOZHNL

clase <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>

Guía del usuarioGENERADO POR IA

Permite a la aplicación responder a solicitudes de lectura y escritura de diagnóstico para identificadores de datos específicos.
GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 7fb3639fc276 Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

Permite a la aplicación responder a solicitudes de lectura y escritura de diagnóstico para identificadores de datos específicos.

La interfaz <DataIdentifier-Namespace>::<DataIdentifierInterface> permite a las aplicaciones adaptativas proporcionar identificadores de datos de diagnóstico específicos del modelo frente a Diagnostic Management [SWS_DM_00585]. Tras la creación, Offer() habilita el reenvío de solicitudes que se procesan de forma asíncrona mediante Read() o Write() y, en caso necesario, se responden con códigos de error UDS [SWS_DM_00599] [SWS_DM_00640]. Dado que la instancia no se puede copiar ni mover, el servicio se finaliza explícitamente a través de StopOffer() antes de su destrucción [SWS_DM_01665] [SWS_DM_00600].

Contexto

La clase de C++ <DataIdentifier-Namespace>::<DataIdentifierInterface> actúa como interfaz funcional para identificadores de datos de diagnóstico (Data Identifiers, DID) en el módulo diag de la Adaptive Platform SWS Diagnostics p. 68. Conecta la capa de aplicación adaptativa con el Diagnostic Management (DM) central. Diagnostic Management recibe solicitudes de diagnóstico externas y las reenvía a la instancia registrada [SWS_DM_00599]. El software de aplicación proporciona la implementación concreta a través de clases derivadas para consultar o actualizar contenidos de datos mediante operaciones de lectura o escritura [SWS_DM_00640] [SWS_DM_00598].

Ciclo de vida

La creación se realiza a través del constructor parametrizado pasando un ara::core::InstanceSpecifier y el modo de concurrencia ara::diag::ConcurrencyType [SWS_DM_00585]. Este último determina si las llamadas a la instancia se pueden procesar de forma concurrente (kConcurrent) o no concurrente (kNotConcurrent) [SWS_DM_00585]. Dado que una instancia está ligada de forma fija a su configuración de modelo, tanto el constructor de copia como el de movimiento están explícitamente eliminados [SWS_DM_01665] [SWS_DM_01666]; lo mismo aplica para los operadores de asignación por copia y por movimiento [SWS_DM_01663] [SWS_DM_01664].

Tras la instanciación, la interfaz se encuentra en estado inactivo. Solo mediante la llamada a Offer() se activa el reenvío de solicitudes de diagnóstico por parte de Diagnostic Management [SWS_DM_00599]. El método StopOffer() finaliza de nuevo este reenvío [SWS_DM_00600]. La liberación de recursos se efectúa mediante el destructor virtual [SWS_DM_00586]. Interpretación: Antes de la destrucción del objeto, es de esperar que típicamente se invoque StopOffer() para evitar de forma ordenada reenvíos pendientes o nuevos entrantes del DM. Pregunta Q-3710c559625978c9 (abierta)

Ruta de uso

El flujo regular comprende la instanciación, el registro del servicio, el procesamiento asíncrono de solicitudes y la subsiguiente desactivación:

  1. Instanciación: La aplicación crea una instancia de la interfaz indicando el InstanceSpecifier y el ajuste deseado de ConcurrencyType [SWS_DM_00585].
  2. Habilitación del servicio: La aplicación invoca Offer(), con lo cual Diagnostic Management puede entregar solicitudes a este manejador [SWS_DM_00599].
  3. Procesamiento de solicitudes: En accesos de lectura, el DM invoca el método puramente virtual Read() [SWS_DM_00640]; en accesos de escritura, Write() [SWS_DM_00598]. Mediante el cancellationHandler suministrado, la aplicación puede monitorizar eventos de cancelación. Los resultados se proporcionan de forma asíncrona como ara::core::Future, que en Read() contiene un objeto ReadOutput con los datos de salida [SWS_DM_00579] [SWS_DM_00640] [SWS_DM_80013].
  4. Finalización del servicio: Mediante la invocación de StopOffer() se detiene el reenvío [SWS_DM_00600] antes de que el objeto sea destruido [SWS_DM_00586].
Flujo de provisión y procesamiento de solicitudes de Data IdentifierAplicaciónDataIdentifierInterfaceDiagnostic ManagementKonstruktor(instanceSpec, concurrencyType)Offer()Weiterleitung aktivierenResult<void> (Erfolg)Use Case: Diagnoseanfrage durch DMRead(metaInfo, cancellationHandler)Future<ReadOutput>Use Case: Detener servicio y desmantelamientoStopOffer()Weiterleitung deaktivieren~<DataIdentifierInterface>()

Diagrama de secuencia: flujo típico de provisión de DID desde la inicialización, pasando por la respuesta asíncrona a solicitudes, hasta la desactivación. Fuentes: [SWS_DM_00585], [SWS_DM_00599], [SWS_DM_00640], [SWS_DM_00600], [SWS_DM_00586].

Escenarios de error

Ya durante la creación del objeto, los errores de modelado pueden dar lugar a infracciones: si faltan vinculaciones de puertos o procesos, se producen InstanceSpecifierMappingIntegrityViolation, PortInterfaceMappingViolation o ProcessMappingViolation [SWS_DM_00585]. Si se reutiliza el mismo InstanceSpecifier en el mismo proceso, el framework reporta InstanceSpecifierAlreadyInUseViolation [SWS_DM_00585].

Si se invoca Offer() a pesar de que el servicio ya se está ofreciendo, la llamada falla y devuelve el código de error DiagOfferErrc::kAlreadyOffered a través de ara::core::Result [SWS_DM_00599]. Si falla la ejecución de Read() o Write(), la implementación transmite errores de forma asíncrona en Future mediante códigos de error UDS ISO 14229-1 (DiagUdsNrcErrc) o ApApplicationError [SWS_DM_00640] [SWS_DM_00598] específicos de la aplicación. En cuanto a la seguridad frente a excepciones, el constructor y los métodos de procesamiento están especificados como exception safe [SWS_DM_00585] [SWS_DM_00599] [SWS_DM_00640] [SWS_DM_00598], mientras que el destructor no está identificado como exception safe [SWS_DM_00586].

Esta guía se basa en la especificación AUTOSAR para la Adaptive Platform (Release R25-11).

Mapa de miembros

Diagrama de clases

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>()

Vista de detalle

Selecciona una entrada en el índice.

Métodos

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

Sobrecargas <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 función

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

ara::core::Result< void > Offer () noexcept;
Read función

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 función

This StopOffer will disable the forwarding of request messages from DM

void StopOffer () noexcept;
Write función

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> ();

Operadores

operator= función 2

Copy assignment constructor deletion

Sobrecargas = 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>;

Tipos anidados

Documentación de los métodos

función <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

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: c2e49b8d93ab Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

usar

La función constructora <DataIdentifierInterface> sirve para instanciar un identificador de datos a partir de un ara::core::InstanceSpecifier [SWS_DM_00585]. La declaración se realiza dentro del espacio de nombres <DataIdentifier-Namespace> a través del archivo de cabecera #include "<DataIdentifierDirectoryPath>/<DataIdentifierShortname>.h" [SWS_DM_00585]. La llamada síncrona está especificada como noexcept y posee las propiedades «exception safe» y «thread-safe» [SWS_DM_00585].

La función acepta los siguientes parámetros de entrada [SWS_DM_00585]:

  • instanceSpec (ara::core::InstanceSpecifier): Identificador de la instancia concreta de un servicio [SWS_DM_00585].
  • concurrencyType (ara::diag::ConcurrencyType): Determina si la interfaz se opera de forma segura para subprocesos con kConcurrent o no segura para subprocesos con kNotConcurrent [SWS_DM_00585].

Tratamiento de errores y reglas de modelado

La función no devuelve ningún valor y no lanza excepciones. En su lugar, los errores en la configuración o el modelado conducen a violaciones definidas [SWS_DM_00585]:

  • InstanceSpecifierMappingIntegrityViolation: El instanceSpec no se puede resolver en el contexto del ejecutable o no hace referencia a un PortPrototype [SWS_DM_00585].
  • PortInterfaceMappingViolation: Un PortPrototype tipificado mediante DiagnosticDataIdentifierInterface no es referenciado por un DiagnosticDataPortMapping [SWS_DM_00585].
  • ProcessMappingViolation: No existe ningún proceso modelado adecuado para la referencia de instancia respecto al proceso de ejecución actual [SWS_DM_00585].
  • InstanceSpecifierAlreadyInUseViolation: El constructor se invocó con un instanceSpec que ya está en uso en el proceso actual [SWS_DM_00585].

Interpretación: Dado que la función está declarada como noexcept, es de suponer que las violaciones detectadas se traten internamente en el framework como errores críticos de inicialización. Pregunta Q-8616025446bf33f2 (abierta)

concurrencia

La propia función constructora se ejecuta de forma segura para subprocesos [SWS_DM_00585]. Mediante el argumento concurrencyType se controla si las llamadas posteriores a la interfaz de la instancia pueden realizarse de manera concurrente [SWS_DM_00585].

Esta nota de uso fue generada automáticamente sobre la base de la especificación.

Guía del implementador pendiente (complejidad 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#2714330a
Content hash
2714330a
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

función <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#aca834a4
Content hash
aca834a4
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

función <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#8b9be02f
Content hash
8b9be02f
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

función 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

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: ebb465f1e58b Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

Uso y contexto de llamada

El método síncrono Offer() permite al Diagnostic Management (DM) reenviar solicitudes de diagnóstico entrantes a la respectiva instancia de <DataIdentifierInterface> ([SWS_DM_00599]). La función no recibe parámetros de transferencia y está especificada como noexcept ([SWS_DM_00599]). Interpretación: la llamada se produciría típicamente durante la fase de inicialización de la aplicación, ya que el DM no puede entregar solicitudes antes de la puesta a disposición. Pregunta Q-4ba81ff234a09f46 (abierta)

Tratamiento de errores y valores de retorno

Como valor de retorno se utiliza ara::core::Result<void> ([SWS_DM_00599]). Si el registro fue correcto, el resultado no contiene ningún valor. Si el manejador ya se había puesto a disposición previamente, la llamada falla y devuelve el código de error DiagOfferErrc::kAlreadyOffered con semántica de reversión (rollback) ([SWS_DM_00599]; cf. [SWS_DM_00514]).

Concurrencia y restricciones

La función garantiza seguridad frente a excepciones (exception safe), pero está especificada expresamente como no segura para subprocesos (not thread-safe) ([SWS_DM_00599]). Las llamadas paralelas en la misma instancia deben ser sincronizadas por la aplicación.

Interacción

El patrón de puesta a disposición se corresponde con el enfoque de activación uniforme en el DM: existen métodos Offer() análogos para identificadores genéricos ([SWS_DM_00638]), elementos de datos ([SWS_DM_00597]), rutinas ([SWS_DM_00557], [SWS_DM_00594]) y servicios DoIP ([SWS_DM_00725], [SWS_DM_00735]). Mientras no se haya ejecutado Offer(), el DM no reenvía peticiones al manejador y responde con valores predeterminados en el caso de servicios DoIP ([SWS_DM_01525], [SWS_DM_01527]).

Esta indicación de uso se generó automáticamente a partir de la especificación AUTOSAR Adaptive Release R25-11.

Guía del implementador pendiente (complejidad 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#6c8aaa29
Content hash
6c8aaa29
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

función 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).

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 85f20519a648 Procedencia
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

usar

El método Read sirve para proporcionar datos de un identificador de datos de diagnóstico (DataIdentifier) en el rol de lectura de un DiagnosticDataIdentifierInterface [SWS_DM_00640]. La llamada la realiza de forma asíncrona el Diagnostic Manager (DM) en caso de solicitudes de diagnóstico externas AUTOSAR_AP_SWS_Diagnostics p. 143 §7.3.2.6.1 «NRCs created by application». Como parámetros se pasan metaInfo para evaluar las propiedades de la solicitud, así como un cancellationHandler [SWS_DM_00640]. La aplicación de procesamiento puede consultar el estado de cancelación mediante cancellationHandler.IsCanceled() o registrar una callback mediante cancellationHandler.SetNotifier() para el caso de que la sesión se interrumpa prematuramente [SWS_DM_00640]. El resultado se devuelve de forma asíncrona como ara::core::Future con un objeto ReadOutput [SWS_DM_00640], [SWS_DM_00579].

Manejo de errores

La función está especificada como exception safe y no debe propagar excepciones hacia el exterior [SWS_DM_00640]. Si se produce un error durante la obtención de datos, la aplicación devuelve en el ara::core::Future un valor de retorno negativo en forma de un código de error de UDS adecuado (NRC según ISO 14229-1 a través de DiagUdsNrcErrc) o de un ApApplicationError [SWS_DM_00640], AUTOSAR_AP_SWS_Diagnostics p. 143 §7.3.2.6.1 «NRCs created by application».

Concurrencia e interacción

La función de la interfaz es, por defecto, not thread-safe [SWS_DM_00640]. La ejecución concurrente de los accesos de lectura y escritura por parte del Diagnostic Manager se regula mediante el tipo ara::diag::DataIdentifierConcurrencyType::readWrite, que está predeterminado por defecto en kNotConcurrent [SWS_DM_00939]. Existen operaciones de lectura afines para elementos de datos individuales a través de DiagnosticDataElementInterface [SWS_DM_00596], así como para identificadores genéricos [SWS_DM_00636].

Este texto ha sido generado por una IA a partir de la especificación AUTOSAR Adaptive R25-11.

Guía del implementador pendiente (complejidad 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#d76ffc09
Content hash
d76ffc09
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

función StopOffer [SWS_DM_00600] Upstream: RS_Diag_04169

void StopOffer () noexcept;

This StopOffer will disable the forwarding of request messages from DM

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 3f19138aee59 Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

El método StopOffer desinstala el reenvío de solicitudes de diagnóstico entrantes de Diagnostic Management (DM) a la instancia de interfaz concreta [SWS_DM_00600]. Mediante la llamada, la aplicación adaptativa señala que deja de estar disponible, de forma temporal o permanente, para procesar solicitudes correspondientes a este DataIdentifier.

Uso y semántica

La llamada se realiza de forma síncrona, no tiene parámetros y no devuelve ningún valor devuelto [SWS_DM_00600]. Como encabezado debe incluirse el archivo de interfaz generado #include "<DataIdentifierDirectoryPath>/<DataIdentifierShortname>.h" [SWS_DM_00600]. La nomenclatura sigue el patrón conocido de ara::com, pero representa una interfaz independiente del dominio de diagnóstico AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 «Monitors».

Tratamiento de errores y concurrencia

  • Seguridad frente a excepciones: La función está declarada con noexcept y garantiza una seguridad total frente a excepciones (exception safe) [SWS_DM_00600]. No se lanzan excepciones.
  • Seguridad de hilos: La operación está especificada como not thread-safe [SWS_DM_00600]. La llamada debe realizarse de forma sincronizada, de modo que no se produzca ningún acceso paralelo a la misma instancia de interfaz.

Interacción

El comportamiento corresponde al patrón de desactivación uniforme de Diagnostic Management, tal como se define análogamente también para interfaces afines, como rutinas [SWS_DM_00558], elementos de datos genéricos [SWS_DM_00639] o servicios de descarga [SWS_DM_00793]. Las solicitudes entrantes de DM dirigidas a este DataIdentifier ya no se reenvían al manejador de la aplicación tras una desactivación correcta [SWS_DM_00600]; previsiblemente, DM generará a continuación los correspondientes códigos de respuesta negativos. Pregunta Q-d301740d097f9946 (abierta)

Esta nota de uso se basa en las estipulaciones de la especificación AUTOSAR AP R25-11.

Guía del implementador pendiente (complejidad 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#41a96ce6
Content hash
41a96ce6
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

función 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).

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 301e55bffd12 Procedencia
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

La función de interfaz sirve para la provisión con seguridad de tipos de un DataIdentifier (DID) de escritura en el rol Write [SWS_DM_00598]. La instancia del Diagnostic Server la invoca cuando se reciben solicitudes de diagnóstico del servicio UDS 0x2E (WriteDataByIdentifier) [SWS_DM_00186], siempre que el DID esté admitido en el sistema y se hayan superado con éxito las comprobaciones de la sesión de diagnóstico activa, así como del nivel de seguridad [SWS_DM_00415] [SWS_DM_00416] [SWS_DM_00417]. A diferencia de la variante genérica con span de bytes sin procesar [SWS_DM_00637], el método vincula parámetros de entrada tipificados específicos del modelo a [SWS_DM_00598].

  • Parámetros: además de los argumentos de entrada generados, el método recibe metainformación sobre la solicitud a través de metaInfo, así como un cancellationHandler [SWS_DM_00598]. A través del manejador de cancelación, la aplicación puede comprobar mediante IsCanceled si la conversación se canceló, o registrar con SetNotifier una notificación para el caso de cancelación [SWS_DM_00598].
  • Valor de retorno y tratamiento de errores: la ejecución se realiza de forma asíncrona a través de ara::core::Future<void> [SWS_DM_00598]. En caso de éxito, el future proporciona el tipo void. En caso de error, debe devolverse un NRC de UDS aplicable según la norma ISO 14229-1 mediante ara::diag::DiagUdsNrcErrc o un ApplicationError correspondiente [SWS_DM_00598]. La función está declarada como segura frente a excepciones (exception safe) [SWS_DM_00598].
  • Concurrencia: el método está clasificado como no seguro para subprocesos (not thread-safe) [SWS_DM_00598]. Si el Diagnostic Management puede invocar en paralelo los accesos de lectura y escritura se controla mediante el elemento de configuración readWrite en DataIdentifierConcurrencyType [SWS_DM_00939].

Esta nota de uso se ha elaborado de manera automatizada a partir de la especificación de AUTOSAR.

Guía del implementador pendiente (complejidad 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#1ef9b4b3
Content hash
1ef9b4b3
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

función 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#8016036e
Content hash
8016036e
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

función 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#a86d98d7
Content hash
a86d98d7
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

función ~<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#95e05e3e
Content hash
95e05e3e
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

Documentación de las 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