DEENESPTFRRUARHIKOZHNL

clase <DataElement-Namespace>::<DataElementInterface>

[SWS_DM_00603] Upstream: RS_Diag_04169

class <DataElementInterface> {...};

DiagnosticDataElementInterface class

Header-Datei#include "<DataElementDirectoryPath>/{<data-element-shortname-lower> }.h"
Forwarding-Header#include "<DataElementDirectoryPath>/{<data-element-shortname-lower> }/<DataElementShortname>_fwd.h"
Scopenamespace <DataElement-Namespace>

Guía del usuarioGENERADO POR IA

Permite a las aplicaciones la provisión y respuesta a consultas de lectura de diagnóstico para el Diagnostic Manager.
GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 70357181b1bf Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

Permite a las aplicaciones la provisión y respuesta a consultas de lectura de diagnóstico para el Diagnostic Manager.

La interfaz sirve a las aplicaciones Adaptive para proporcionar datos de diagnóstico para accesos de lectura de Diagnostic Management. Tras la instanciación mediante un especificador de instancia, la aplicación debe ofrecer activamente el servicio para que puedan recibirse peticiones de lectura entrantes [SWS_DM_00597]. Las peticiones entrantes se procesan a través del método de lectura asíncrono, que proporciona los datos de salida solicitados o códigos de respuesta negativos en un valor futuro [SWS_DM_00596]. Dado que las operaciones de copia y movimiento están eliminadas, cada instancia está vinculada de forma fija a su contexto.

Contexto

La clase C++ generada <DataElementInterface> actúa dentro del clúster funcional diag (AUTOSAR Adaptive Platform) como interfaz de servidor estandarizada para la provisión de datos de diagnóstico legibles AUTOSAR_AP_SWS_Diagnostics p. 68. Concretamente representa un DiagnosticDataElementInterface en el rol read, a través del cual una aplicación Adaptive transmite valores de datos para peticiones de diagnóstico (como por ejemplo UDS ReadDataByIdentifier) al Diagnostic Manager (DM) [SWS_DM_00596].

Los interlocutores de interacción esenciales son Diagnostic Management del demonio de plataforma, que coordina las peticiones de diagnóstico entrantes, así como la aplicación Adaptive implementadora, que hereda de esta interfaz y formula la lógica de provisión. La instanciación y la asignación a la arquitectura de software se realizan mediante un prototipo de puerto modelado que se vincula a través de un ara::core::InstanceSpecifier [SWS_DM_00587]. Los datos de salida se encapsulan en una estructura específica del tipo, cuyos argumentos están representados por los elementos de salida correspondientes [SWS_DM_80023], [SWS_DM_00581].

Ciclo de vida

La creación de una instancia se realiza mediante el constructor especificando el ara::core::InstanceSpecifier así como el modo de concurrencia ara::diag::ConcurrencyType [SWS_DM_00587]. Para mantener una asignación unívoca dentro del proceso, tanto el constructor de copia como el constructor de movimiento están eliminados [SWS_DM_01661], [SWS_DM_01662]. Del mismo modo, los operadores de asignación por copia y por movimiento están explícitamente eliminados [SWS_DM_01659], [SWS_DM_01660]. Por lo tanto, una instancia permanece fija en su dirección creada.

En cuanto a la operación, el objeto pasa por fases definidas:

  • No ofrecido (Not Offered): tras la construcción, el objeto se encuentra inicialmente en un estado inactivo en el que el DM no entrega peticiones de lectura.
  • Ofrecido (Offered): mediante la invocación de Offer() se activa el servicio en el DM, de modo que las peticiones de lectura entrantes se reenvían [SWS_DM_00597].
  • Dado de baja: la invocación de StopOffer() desactiva el reenvío de futuras peticiones de diagnóstico por parte del DM [SWS_DM_00617].
  • Destrucción: el destructor virtual ~<DataElementInterface>() finaliza el ciclo de vida de la instancia de la interfaz [SWS_DM_00588].

Mientras que el constructor está especificado como seguro para subprocesos [SWS_DM_00587], Offer(), StopOffer(), Read() y el destructor no son seguros para subprocesos [SWS_DM_00597], [SWS_DM_00617], [SWS_DM_00596], [SWS_DM_00588]. El parámetro concurrencyType en el constructor determina si la implementación del manejador está ejecutada como thread-safe (kConcurrent) o no thread-safe (kNotConcurrent) [SWS_DM_00587].

Lifecycle Uninitialized Uninitialized NotOffered NotOffered Uninitialized->NotOffered Konstruktor Offered Offered NotOffered->Offered Offer() Destructed Destructed NotOffered->Destructed Destruktor Offered->NotOffered StopOffer() Offered->Destructed Destruktor

Diagrama de estados: fases de estado de una instancia de interfaz entre inicialización, estado de publicación y destrucción. Fuentes: [SWS_DM_00587], [SWS_DM_00597], [SWS_DM_00617], [SWS_DM_00588].

Ruta de uso

El flujo regular para la consulta de datos sigue una secuencia fija de pasos:

  1. Instanciación: La aplicación instancia la clase controladora derivada con el instanceSpec y concurrencyType deseados [SWS_DM_00587].
  2. Habilitación del servicio: La aplicación invoca Offer(), lo que capacita al DM para reenviar peticiones de lectura [SWS_DM_00597].
  3. Procesamiento de peticiones de lectura: Si llega una petición de lectura al DM, este invoca el método puramente virtual Read(metaInfo, cancellationHandler) en el controlador [SWS_DM_00596]. La aplicación evalúa metaInfo y puede comprobar mediante cancellationHandler.IsCanceled() si la conversación se ha cancelado, o registrar una retrollamada a través de cancellationHandler.SetNotifier [SWS_DM_00596].
  4. Respuesta: Interpretación: La determinación efectiva de los datos de salida debería llevarse a cabo típicamente de forma asíncrona; el resultado se proporciona en un ara::core::Future con el correspondiente objeto ReadOutput [SWS_DM_00596], [SWS_DM_00581]. Pregunta Q-ce317bd1275e4fd9 (abierta)
  5. Finalización del servicio: Antes del apagado, la aplicación invoca StopOffer() para impedir el reenvío [SWS_DM_00617], seguido de la destrucción del objeto [SWS_DM_00588].
Secuencia de llamada para la provisión y lectura de un elemento de datos de diagnósticoDiagnostic ManagementDataElement HandlerAnwendungskernUse Case: DienstregistrierungOffer()Result<void> (kSuccess)Use Case: Leseanfrage verarbeitenRead(metaInfo, cancellationHandler)Daten abfragen / ermittelnaltErfolgreich gelesenReadOutput bereitstellenFuture con ReadOutputFehlerfall / NRCFehler aufgetretenFuture con DiagUdsNrcErrcUse Case: DienstabmeldungStopOffer()

Diagrama de secuencia: Secuencia de llamadas desde el registro del servicio hasta la desinscripción, pasando por la lectura asíncrona. Fuentes: [SWS_DM_00597], [SWS_DM_00596], [SWS_DM_00617].

Escenarios de error

En caso de error, las diferentes fases de ciclo de vida deben considerarse de manera diferenciada:

Ya durante la construcción pueden producirse violaciones de integridad que se señalan mediante infracciones específicas [SWS_DM_00587]:

  • InstanceSpecifierMappingIntegrityViolation: El especificador de instancia no puede resolverse en el modelo del ejecutable o no hace referencia a un PortPrototype.
  • PortInterfaceMappingViolation: Un PortPrototype tipificado mediante el DiagnosticDataElementInterface no está referenciado por un DiagnosticDataPortMapping.
  • ProcessMappingViolation: Aunque existe una InstanceRef adecuada, no se ha encontrado ningún proceso modelado coincidente que se corresponda con el proceso en tiempo de ejecución.
  • InstanceSpecifierAlreadyInUseViolation: El constructor se invocó con un InstanceSpecifier que ya se está utilizando en el proceso actual.

Si se invoca Offer() para un servicio ya ofrecido, el método devuelve un ara::core::Result con el código de error DiagOfferErrc::kAlreadyOffered (semántica de reversión) [SWS_DM_00597].

Si una petición de lectura no puede responderse satisfactoriamente en Read(), el ara::core::Future devuelto debe contener un Negative Response Code (NRC) de ISO 14229-1 correspondiente a través de DiagUdsNrcErrc o un ApApplicationError [SWS_DM_00596].

Esta guía se basa en la especificación AUTOSAR AP Release R25-11 y resume los requisitos del módulo diag.

Mapa de miembros

Diagrama de clases

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

G n_DataElement_Namespace____DataElementInterface_750 <DataElementInterface> + <DataElementOutArg> + Offer() + Read() + StopOffer() + operator=() + <DataElementInterface>() + ~<DataElementInterface>()

Vista de detalle

Selecciona una entrada en el índice.

Métodos

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

Sobrecargas <DataElementInterface> 3
<DataElementInterface1> (ara::core::InstanceSpecifier instanceSpec, ara::diag::ConcurrencyType concurrencyType) noexcept; SWS_DM_00587
<DataElementInterface2> (const <DataElementInterface2> &other)=delete; SWS_DM_01661
<DataElementInterface4> (<DataElementInterface4> &&other)=delete; SWS_DM_01662
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 Read DataElement (DiagnosticDataElementInterface in the role read)

virtual ara::core::Future< <DataElement>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;

Destruction of a DataElement

virtual ~<DataElementInterface6> () noexcept;

Operadores

operator= función 2

Copy assignment constructor deletion

Sobrecargas = 2
<DataElementInterface3> & operator= (const <DataElementInterface3> &other)=delete; SWS_DM_01659
<DataElementInterface5> & operator= ( <DataElementInterface5> &&other)=delete; SWS_DM_01660

Constantes

Member declaration representing an out argument in an Output.

<DataElementOutArgType> <DataElementOutArg>;

Tipos anidados

Documentación de los métodos

función <DataElementInterface> [SWS_DM_00587] Upstream: RS_AP_00137, RS_AP_00170, RS_AP_00171, RS_AP_00172, RS_AP_00173

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

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

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

La función constructora [SWS_DM_00587] sirve para instanciar un <DataElementInterface> mediante un ara::core::InstanceSpecifier según AUTOSAR_AP_SWS_Diagnostics §8.28.2.2.1.6.

Uso y parámetros:

  • instanceSpec: Especifica la instancia concreta del servicio en el contexto del modelo.
  • concurrencyType: Determina el comportamiento de concurrencia y establece si la interfaz se ejecuta de forma segura para subprocesos (kConcurrent) o no segura para subprocesos (kNotConcurrent).

Concurrencia y seguridad frente a excepciones: La función está declarada como noexcept y clasificada en la especificación como thread-safe y exception-safe [SWS_DM_00587].

Tratamiento de errores y violaciones de modelado: Los errores no dan lugar a excepciones de C++, sino a violaciones especificadas:

  • InstanceSpecifierMappingIntegrityViolation: Se produce cuando instanceSpec no es resoluble en el contexto del proceso o no hace referencia a un PortPrototype.
  • PortInterfaceMappingViolation: Se notifica cuando un PortPrototype tipificado a través de DiagnosticDataElementInterface no es referenciado por un DiagnosticDataPortMapping.
  • ProcessMappingViolation: Se presenta cuando existe una referencia de instancia pero no existe un proceso modelado coincidente con el proceso de ejecución.
  • InstanceSpecifierAlreadyInUseViolation: Se envía cuando el instanceSpec ya está ocupado en el mismo proceso por una llamada al constructor.

Esta nota de uso se ha generado automáticamente sobre la base de AUTOSAR R25-11.

Guía del implementador pendiente (complejidad I1)

Header-Datei#include "<DataElementDirectoryPath>/{<data-element-shortname-lower> }.h"
Scopeclass <DataElement-Namespace>::<DataElementInterface>
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 DiagnosticDataElementInterface 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_00587
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00587@rel:R25-11#76c3639c
Content hash
76c3639c
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00587
Status: valid/unmigrated Version: rel:R25-11#3137c965 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_00587@rel:R25-11#3137c965
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#5035bc322026-09-30
  • R19-11rel:R19-11#362db1312026-10-14
  • R20-11rel:R20-11#2280335d2026-10-14
  • R21-11rel:R21-11#90eaccce2026-10-14
  • R22-11rel:R22-11#163504222026-10-14
  • R23-11rel:R23-11#bbe3ec942026-10-14
  • R24-11rel:R24-11#5f9d4fbd2026-10-14
  • R25-11rel:R25-11#3137c9652026-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 <DataElementInterface> [SWS_DM_01661] Upstream: RS_AP_00147

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

Copy constructor deletion

Header-Datei#include "<DataElementDirectoryPath>/{<data-element-shortname-lower> }.h"
Scopeclass <DataElement-Namespace>::<DataElementInterface>

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

Record
AUTOSAR/AP/record/SWS_DM_01661
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01661@rel:R25-11#cd391f51
Content hash
cd391f51
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01661
Status: valid/unmigrated Version: rel:R25-11#2f60d744 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_01661@rel:R25-11#2f60d744
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#1cd9fb522026-09-30
  • R23-11rel:R23-11#0016469c2026-10-14
  • R24-11rel:R24-11#de93ef5f2026-10-14
  • R25-11rel:R25-11#2f60d7442026-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 <DataElementInterface> [SWS_DM_01662] Upstream: RS_AP_00147

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

Move constructor

Header-Datei#include "<DataElementDirectoryPath>/{<data-element-shortname-lower> }.h"
Scopeclass <DataElement-Namespace>::<DataElementInterface>

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

Record
AUTOSAR/AP/record/SWS_DM_01662
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01662@rel:R25-11#a1e7ac9b
Content hash
a1e7ac9b
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01662
Status: valid/unmigrated Version: rel:R25-11#2bcbb47c 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_01662@rel:R25-11#2bcbb47c
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#91b60d862026-09-30
  • R23-11rel:R23-11#df8de15a2026-10-14
  • R24-11rel:R24-11#05b223222026-10-14
  • R25-11rel:R25-11#2bcbb47c2026-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_00597] 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: 9d47ee9edbd8 Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

El método síncrono Offer de un DataElementInterface activa el reenvío de peticiones de diagnóstico entrantes por parte del Diagnostic Management Daemon (DM) al manejador correspondiente ([SWS_DM_00597]). No acepta parámetros, garantiza seguridad frente a excepciones (exception safe / noexcept) y devuelve un ara::core::Result<void> ([SWS_DM_00597]).

Para el tratamiento de fallos, la concurrencia y el orden se aplican las siguientes prescripciones:

  • Tratamiento de fallos: Si el servicio ya se había ofrecido anteriormente, la llamada falla y proporciona el código de error DiagOfferErrc::kAlreadyOffered con semántica de reversión ([SWS_DM_00597]).
  • Concurrencia: La función está especificada como no segura para subprocesos (not thread-safe) ([SWS_DM_00597]). Las llamadas simultáneas en la misma instancia deben sincronizarse en la aplicación.
  • Condiciones de orden: Mientras la Adaptive Application no haya llamado a Offer, el DM no reenvía peticiones al manejador o utiliza valores de reserva internos ([SWS_DM_01525], [SWS_DM_01527]). La llamada debería tener lugar típicamente en la fase de inicio de la aplicación (interpretación). Pregunta Q-dca0925e698789c5 (abierta)

El concepto de puesta a disposición mediante Offer se utiliza de forma consistente también en otros manejadores del DM, como rutinas ([SWS_DM_00594]) e identificadores de datos ([SWS_DM_00599]). Aunque la denominación se basa en ara::com, constituye una implementación independiente del DM (SWS Diagnostics §7.3.4.1.2 «Monitors»).

Este texto ha sido generado por una IA a partir de los datos de especificación.

Guía del implementador pendiente (complejidad I2)

Header-Datei#include "<DataElementDirectoryPath>/{<data-element-shortname-lower> }.h"
Scopeclass <DataElement-Namespace>::<DataElementInterface>
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_00597
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00597@rel:R25-11#d3e7ddb6
Content hash
d3e7ddb6
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00597
Status: valid/unmigrated Version: rel:R25-11#dc11c9cd 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_00597@rel:R25-11#dc11c9cd
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#872cc3392026-09-30
  • R19-11rel:R19-11#aef2a6c42026-10-14
  • R20-11rel:R20-11#dc31bf0e2026-10-14
  • R21-11rel:R21-11#38b1f8ef2026-10-14
  • R22-11rel:R22-11#3ac4d67f2026-10-14
  • R23-11rel:R23-11#c2a3f2c12026-10-14
  • R24-11rel:R24-11#9279c3692026-10-14
  • R25-11rel:R25-11#dc11c9cd2026-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_00596] Upstream: RS_AP_00114, RS_AP_00127, RS_AP_00128, RS_AP_00138

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

Provision of a Read DataElement (DiagnosticDataElementInterface in the role read)

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

El método Read sirve para poner a disposición un elemento de datos dentro de una instancia de DiagnosticDataElementInterface en el rol read [SWS_DM_00596]. La llamada se realiza de forma asíncrona por parte del Diagnostic Manager para procesar peticiones de lectura de diagnóstico.

Uso y signatura

La interfaz devuelve un ara::core::Future con un objeto tipado ReadOutput conforme a [SWS_DM_00581] [SWS_DM_00596]. A través de los parámetros transferidos, la implementación procesa la petición:

  • metaInfo: Transfiere metainformación sobre la petición de diagnóstico entrante [SWS_DM_00596].
  • cancellationHandler: Permite monitorizar una cancelación prematura de la conversación de diagnóstico a través de cancellationHandler.IsCanceled(), así como registrar una función de notificación mediante cancellationHandler.SetNotifier() [SWS_DM_00596].

Tratamiento de errores y concurrencia

Si el elemento de datos no se puede leer correctamente, el ara::core::Future no devuelve ningún valor, sino un error. Como código de error debe establecerse un Negative Response Code (NRC) de UDS adecuado según ISO 14229-1 a través de DiagUdsNrcErrc o un ApApplicationError [SWS_DM_00596]. La función está especificada como noexcept y segura frente a excepciones (exception safe).

En cuanto al contexto de ejecución, Read está declarado como not thread-safe [SWS_DM_00596]. La interacción se corresponde con el patrón general de operaciones de lectura de diagnóstico adaptativas, tal como se definen de forma análoga para identificadores de datos ([SWS_DM_00640]) o Extended Data Records ([SWS_DM_02156]).

Esta nota de uso fue generada automáticamente a partir de la especificación de AUTOSAR.

Guía del implementador pendiente (complejidad I1)

Header-Datei#include "<DataElementDirectoryPath>/{<data-element-shortname-lower> }.h"
Scopeclass <DataElement-Namespace>::<DataElementInterface>
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-element-name>}ReadOutput >• If successful: an ara::core::Future containing a ReadOutput object as per [SWS_DM_00581] • 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_00596
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00596@rel:R25-11#ab6f70ed
Content hash
ab6f70ed
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00596
Status: valid/unmigrated Version: rel:R25-11#db56d6b8 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_00596@rel:R25-11#db56d6b8
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#46170e3a2026-09-30
  • R19-11rel:R19-11#27ec1d4b2026-10-14
  • R20-11rel:R20-11#7e478e7b2026-10-14
  • R21-11rel:R21-11#86f986be2026-10-14
  • R22-11rel:R22-11#d7f279f42026-10-14
  • R23-11rel:R23-11#05b772b12026-10-14
  • R24-11rel:R24-11#47e253022026-10-14
  • R25-11rel:R25-11#db56d6b82026-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_00617] 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: 91119add8e3c 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 en la interfaz <DataElement-Namespace>::<DataElementInterface> desactiva el reenvío de mensajes de petición entrantes desde Diagnostic Management (DM) al elemento de datos en cuestión [SWS_DM_00617]. La llamada se realiza de forma síncrona, no requiere parámetros de transferencia y no devuelve ningún valor de retorno [SWS_DM_00617].

En cuanto al tratamiento de fallos, la función está especificada como exception safe y declarada con noexcept [SWS_DM_00617]. No se lanzan excepciones de C++ ni se devuelven códigos de error. Interpretación: Dado que la especificación solo prevé impedir el reenvío de mensajes, la llamada al método debería rechazar exclusivamente peticiones de diagnóstico futuras, mientras que los procesamientos ya en curso en el momento de la llamada no se ven afectados. Pregunta Q-a741bb87f41cfe59 (abierta)

En cuanto a la concurrencia, la interfaz está definida como not thread-safe [SWS_DM_00617]. Por tanto, los invocadores deben proteger los accesos paralelos a la misma instancia mediante mecanismos de sincronización en la aplicación. Aunque el nombre se eligió tomando como referencia ara::com, se trata de una interfaz independiente y específica de diagnóstico del clúster funcional Diagnostics AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 «Monitors».

La desactivación se integra en el patrón arquitectónico global del DM: existen métodos análogos StopOffer para identificadores de datos [SWS_DM_00600], rutinas genéricas [SWS_DM_00558], servicios UDS genéricos [SWS_DM_00620], así como para peticiones de reinicio [SWS_DM_01017], con el fin de finalizar de forma controlada el reenvío de peticiones al manejador correspondiente en cada caso.

Esta nota de uso se ha generado de forma automatizada a partir de la especificación AUTOSAR AP R25-11.

Guía del implementador pendiente (complejidad I2)

Header-Datei#include "<DataElementDirectoryPath>/{<data-element-shortname-lower> }.h"
Scopeclass <DataElement-Namespace>::<DataElementInterface>
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_00617
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00617@rel:R25-11#54e7998c
Content hash
54e7998c
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00617
Status: valid/unmigrated Version: rel:R25-11#f93e3c48 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_00617@rel:R25-11#f93e3c48
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#c087b5492026-09-30
  • R19-11rel:R19-11#4686d8712026-10-14
  • R20-11rel:R20-11#302902f52026-10-14
  • R21-11rel:R21-11#60b4eb6e2026-10-14
  • R22-11rel:R22-11#630d49a22026-10-14
  • R23-11rel:R23-11#d3c624d92026-10-14
  • R24-11rel:R24-11#a0e4aac82026-10-14
  • R25-11rel:R25-11#f93e3c482026-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_01659] Upstream: RS_AP_00147

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

Copy assignment constructor deletion

Header-Datei#include "<DataElementDirectoryPath>/{<data-element-shortname-lower> }.h"
Scopeclass <DataElement-Namespace>::<DataElementInterface>

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

Record
AUTOSAR/AP/record/SWS_DM_01659
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01659@rel:R25-11#9833d9bc
Content hash
9833d9bc
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01659
Status: valid/unmigrated Version: rel:R25-11#af6f33fc 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_01659@rel:R25-11#af6f33fc
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#473419de2026-09-30
  • R23-11rel:R23-11#9013eaab2026-10-14
  • R24-11rel:R24-11#bd96b8662026-10-14
  • R25-11rel:R25-11#af6f33fc2026-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_01660] Upstream: RS_AP_00147

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

Move assignment constructor

Header-Datei#include "<DataElementDirectoryPath>/{<data-element-shortname-lower> }.h"
Scopeclass <DataElement-Namespace>::<DataElementInterface>

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

Record
AUTOSAR/AP/record/SWS_DM_01660
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01660@rel:R25-11#a855b91f
Content hash
a855b91f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01660
Status: valid/unmigrated Version: rel:R25-11#5711e300 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_01660@rel:R25-11#5711e300
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#e5b157292026-09-30
  • R23-11rel:R23-11#1e4f2e112026-10-14
  • R24-11rel:R24-11#92f17c3c2026-10-14
  • R25-11rel:R25-11#5711e3002026-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 ~<DataElementInterface> [SWS_DM_00588] Upstream: RS_Diag_04169, RS_AP_00134

virtual ~<DataElementInterface6> () noexcept;

Destruction of a DataElement

Header-Datei#include "<DataElementDirectoryPath>/{<data-element-shortname-lower> }.h"
Scopeclass <DataElement-Namespace>::<DataElementInterface>
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_00588
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00588@rel:R25-11#8a92c019
Content hash
8a92c019
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00588
Status: valid/unmigrated Version: rel:R25-11#ad7733a4 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_00588@rel:R25-11#ad7733a4
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#b88cfb3b2026-09-30
  • R19-11rel:R19-11#4c53dc262026-10-14
  • R20-11rel:R20-11#b2fa29ed2026-10-14
  • R21-11rel:R21-11#0f467e0d2026-10-14
  • R22-11rel:R22-11#b00f6d462026-10-14
  • R23-11rel:R23-11#28e88b432026-10-14
  • R24-11rel:R24-11#2cdc2f6c2026-10-14
  • R25-11rel:R25-11#ad7733a42026-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 <DataElementOutArg> [SWS_DM_80023] Upstream: RS_Diag_04224, RS_Diag_04169

<DataElementOutArgType> <DataElementOutArg>;

Member declaration representing an out argument in an Output.

Header-Datei#include "<DataElementDirectoryPath>/{<data-element-shortname-lower> }.h"
Scopeclass <DataElement-Namespace>::<DataElementInterface>
Symbol<DataElementOutArg>
Typ<DataElementOutArgType>

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

Record
AUTOSAR/AP/record/SWS_DM_80023
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_80023@rel:R25-11#98e36acc
Content hash
98e36acc
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_80023
Status: valid/unmigrated Version: rel:R25-11#caed5afa 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_80023@rel:R25-11#caed5afa
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#98e36acc2026-09-30
  • R24-11rel:R24-11#b1ac80b72026-10-14
  • R25-11rel:R25-11#caed5afa2026-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