DEENESPTFRRUARHIKOZHNL

clase ara::diag::CommunicationControl

[SWS_DM_00804] Upstream: RS_Diag_04278

class CommunicationControl {...};

0x28 CommunicationControl interface

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

Guía del usuarioGENERADO POR IA

Permite a las aplicaciones procesar solicitudes de diagnóstico del servicio UDS 0x28 para el control de la comunicación.
GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: ae3aac538bd3 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 procesar solicitudes de diagnóstico del servicio UDS 0x28 para el control de la comunicación.

La clase ara::diag::CommunicationControl sirve en AUTOSAR Adaptive como interfaz para procesar el servicio UDS 0x28 (CommunicationControl) destinado a la conmutación de canales de comunicación [SWS_DM_00808]. Tras la instanciación basada en modelos a través de un InstanceSpecifier, Offer() activa el reenvío de solicitudes por parte del Diagnostic Manager, las cuales se procesan posteriormente de forma asíncrona mediante CommCtrlRequest [SWS_DM_00806], [SWS_DM_00809]. Al tratarse de una instancia única estricta, la clase excluye operaciones de copia y de movimiento, y exige una desregistración mediante StopOffer() antes de finalizar [SWS_DM_00810].

Contexto

La clase ara::diag::CommunicationControl define la interfaz estandarizada para la gestión del servicio de diagnóstico UDS 0x28 (CommunicationControl) en la AUTOSAR Adaptive Platform AUTOSAR_AP_SWS_Diagnostics, p. 70. Como clase base abstracta, actúa de intermediaria entre el Diagnostic Manager (DM) y la funcionalidad de diagnóstico específica de la aplicación con la que se controla el envío o la recepción de determinados mensajes de comunicación en la red del vehículo. El software de aplicación deriva de esta clase e implementa el método puramente virtual CommCtrlRequest para recibir y ejecutar instrucciones de control entrantes [SWS_DM_00808]. La vinculación con el modelo de sistema de AUTOSAR se realiza mediante un ara::core::InstanceSpecifier, el cual referencia un PortPrototype de un DiagnosticComControlInterface [SWS_DM_00806].

Ciclo de vida

Una instancia se crea explícitamente a través del constructor indicando el ara::core::InstanceSpecifier y el modelo de concurrencia ConcurrencyType (kConcurrent o kNotConcurrent) [SWS_DM_00806]. La clase cuenta con una semántica estricta de instancia única y no es copiable ni movible: tanto el constructor de copia [SWS_DM_01677] y el constructor de movimiento [SWS_DM_01678] como el operador de asignación por copia [SWS_DM_01675] y el operador de asignación por movimiento [SWS_DM_01676] están eliminados (=delete).

Tras su creación, la instancia permanece inicialmente inactiva. Solo mediante la llamada a Offer() se autoriza al Diagnostic Manager a reenviar las solicitudes de diagnóstico entrantes al manejador [SWS_DM_00809]. A la inversa, StopOffer() revoca esta autorización y desactiva el reenvío [SWS_DM_00810]. La destrucción se lleva a cabo mediante el destructor virtual [SWS_DM_00807]. Interpretación: es probable que sea necesario llamar a StopOffer() antes de destruir el objeto para que el Diagnostic Manager no mantenga reenvíos huérfanos. Pregunta Q-f67e35c9fea508d8 (abierta)

En cuanto a la concurrencia, el constructor es seguro para subprocesos (thread-safe) [SWS_DM_00806], mientras que el destructor [SWS_DM_00807], Offer() [SWS_DM_00809] y StopOffer() [SWS_DM_00810] no son seguros para subprocesos. La ejecución de CommCtrlRequest es condicionalmente segura para subprocesos (conditional): el ConcurrencyType establecido en el constructor determina si la implementación debe ser segura para subprocesos [SWS_DM_00808].

Ruta de uso

El flujo regular comprende la instanciación de la clase derivada, el registro del servicio, el procesamiento asíncrono de solicitudes de diagnóstico y la desregistración final:

  1. Inicialización: La aplicación instancia el manejador indicando el InstanceSpecifier y el ConcurrencyType deseado [SWS_DM_00806].
  2. Oferta de servicio: Mediante Offer() se habilita el servicio en el Diagnostic Manager [SWS_DM_00809].
  3. Procesamiento de solicitudes: Si llega una solicitud UDS para el servicio 0x28 con cualquier subfunción, el Diagnostic Manager llama a CommCtrlRequest [SWS_DM_00808]. Los parámetros comprenden:
    • controlType (ComCtrlRequestParamsType): Todos los parámetros de solicitud UDS, incluidos los elementos opcionales.
    • metaInfo (const MetaInfo&): Metainformación sobre la solicitud de diagnóstico.
    • cancellationHandler (CancellationHandler): Sirve para la consulta de estado mediante IsCanceled(), así como para el registro de una función de devolución de llamada (callback) de cancelación vía SetNotifier().
  4. Respuesta: El procesamiento finaliza de forma asíncrona y notifica el resultado mediante ara::core::Future<void> [SWS_DM_00808].
  5. Desregistración: Antes de apagar o finalizar, la aplicación detiene el reenvío mediante StopOffer() [SWS_DM_00810].
Flujo de llamada y procesamiento para CommunicationControl (0x28)AplicaciónCommunicationControlDiagnostic ManagerKonstruktor(specifier, concurrencyType)Offer()Registro para UDS 0x28Confirmación (o kAlreadyOffered)Result<void>Use Case: Diagnoseanfrage bearbeitenCommCtrlRequest(controlType, metaInfo, cancellationHandler)Verarbeitung / Abfrage cancellationHandlerFuture<void> (éxito o DiagUdsNrcErrc)Use Case: Dienst deregistrierenStopOffer()Weiterleitung beenden

Diagrama de secuencias: Flujo típico desde la inicialización y el procesamiento de la solicitud UDS 0x28 hasta la desregistración. Fuentes: [SWS_DM_00806], [SWS_DM_00808], [SWS_DM_00809], [SWS_DM_00810].

Escenarios de error

Ya durante la construcción, las incoherencias en el modelo AUTOSAR pueden provocar violaciones en tiempo de ejecución (violations) [SWS_DM_00806]:

  • InstanceSpecifierMappingIntegrityViolation: El InstanceSpecifier no se puede resolver en el contexto del ejecutable o no apunta a un PortPrototype.
  • PortInterfaceMappingViolation: El PortPrototype tipificado por DiagnosticComControlInterface no está referenciado por un DiagnosticServiceGenericMapping.
  • ProcessMappingViolation: Existe una referencia de instancia coincidente, pero no hay ningún proceso modelado que coincida con el proceso actual.
  • InstanceSpecifierAlreadyInUseViolation: el identificador ya está siendo utilizado en el mismo proceso por otra instancia.

Durante el funcionamiento normal, Offer() notifica mediante el valor de retorno ara::core::Result<void> el error DiagOfferErrc::kAlreadyOffered en caso de que el servicio ya se haya ofrecido con anterioridad y aún se encuentre activo [SWS_DM_00809]. Si una solicitud de diagnóstico no se puede satisfacer técnicamente en CommCtrlRequest, el método devuelve un Negative Response Code (NRC) conforme a ISO 14229-1 a través del ara::core::Future<void> mediante DiagUdsNrcErrc [SWS_DM_00808].

Esta guía de clase ha sido elaborada por un asistente de curación con IA sobre la base de AUTOSAR Adaptive R25-11.

Mapa de miembros

Diagrama de clases

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

G nara__diag__CommunicationControl599 CommunicationControl + CommunicationControl() + operator=() + ~CommunicationControl() + CommCtrlRequest() + Offer() + StopOffer()

Vista de detalle

Selecciona una entrada en el índice.

Constructores y destructor

Constructor of CommunicationControl.

Sobrecargas CommunicationControl 3
explicit CommunicationControl (const ara::core::InstanceSpecifier &specifier, ConcurrencyType concurrencyType) noexcept; SWS_DM_00806
CommunicationControl (CommunicationControl &)=delete; SWS_DM_01677
CommunicationControl (CommunicationControl &&) noexcept=delete; SWS_DM_01678

Destructor of class CommunicationControl.

virtual ~CommunicationControl () noexcept;

Métodos

Called for CommunicationControl (0x28) with any subfunction as subfunction value is part of the argument list.

virtual ara::core::Future< void > CommCtrlRequest (ComCtrlRequest ParamsType controlType, const MetaInfo &metaInfo, CancellationHandler cancellationHandler) noexcept=0;
Offer función

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

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

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

void StopOffer () noexcept;

Operadores

operator= función 2

CommunicationControl shall be a single not assignable instance.

Sobrecargas = 2

Tipos anidados

Documentación de los métodos

función CommCtrlRequest [SWS_DM_00808] Upstream: RS_AP_00119, RS_AP_00138, RS_Diag_04170, RS_Diag_04278

virtual ara::core::Future< void > CommCtrlRequest (ComCtrlRequest ParamsType controlType, const MetaInfo &metaInfo, CancellationHandler cancellationHandler) noexcept=0;

Called for CommunicationControl (0x28) with any subfunction as subfunction value is part of the argument list.

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

La instancia del Diagnostic Server llama al método puramente virtual ara::diag::CommunicationControl::CommCtrlRequest ([SWS_DM_00808]) para procesar peticiones de diagnóstico del servicio UDS 0x28 (CommunicationControl) ([SWS_DM_00865], SWS Diagnostics §7.3.2.8.10 «Service 0x28 – CommunicationControl»). Todos los parámetros de la petición UDS, incluida la subfunción, se transmiten agrupados a través de la estructura controlType ([SWS_DM_00808]). La llamada devuelve un ara::core::Future<void>, por lo que el procesamiento se realiza de forma asíncrona. A través del parámetro cancellationHandler, la aplicación puede consultar el estado de cancelación mediante IsCanceled() o registrar a través de SetNotifier() un callback para la cancelación de la conversación ([SWS_DM_00808]).

Si la aplicación finaliza el procesamiento sin errores, el Diagnostic Server envía una respuesta UDS positiva ([SWS_DM_00199]). Si se produce un error, este debe notificarse como un Negative Response Code (NRC) adecuado conforme a ISO 14229-1 a través de ara::diag::DiagUdsNrcErrc ([SWS_DM_00808]); a continuación, el servidor responde negativamente a la petición de servicio con este código de error ([SWS_DM_00866]). El servidor rechaza por adelantado las subfunciones no configuradas con el NRC 0x12 (kSubFunctionNotSupported) ([SWS_DM_00252]).

El método está declarado con noexcept y es seguro frente a excepciones ([SWS_DM_00808], SWS Diagnostics §8.7.1.1.3.1 «CommCtrlRequest»). Su seguridad para subprocesos es condicional: si la función debe implementarse de forma segura para subprocesos se determina mediante el parámetro de constructor ConcurrencyType de la instancia ([SWS_DM_00808]). La conmutación efectiva de los modos de comunicación probablemente se produzca de forma asíncrona en segundo plano antes de que se resuelva el future. Pregunta Q-8a8e1bd2585fa859 (abierta)

Este texto ha sido elaborado y seleccionado por una IA. Todas las afirmaciones se basan exclusivamente en los documentos de especificación de AUTOSAR R25-11.

Guía del implementador pendiente (complejidad I1)

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl
Exception-Sicherheitexception safe
Thread-Sicherheitconditional whether the function has to be implemented thread safe or non-thread safe is determined by the ConcurrencyType given in the constructor

Parameter (in)

ParameterBeschreibung
controlTypeAll UDS request parameters packed into a structure since it holds optional elements
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 >Returns nothing or an error.

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_00808
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00808@rel:R25-11#7e63863f
Content hash
7e63863f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00808
Status: valid/unmigrated Version: rel:R25-11#727dd05b 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_00808@rel:R25-11#727dd05b
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#424df4222026-09-30
  • R19-11rel:R19-11#70e59b9a2026-10-14
  • R20-11rel:R20-11#35c65b602026-10-14
  • R21-11rel:R21-11#aa3f917f2026-10-14
  • R22-11rel:R22-11#21c3e83e2026-10-14
  • R23-11rel:R23-11#62deb4992026-10-14
  • R24-11rel:R24-11#f7c711472026-10-14
  • R25-11rel:R25-11#727dd05b2026-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 CommunicationControl [SWS_DM_00806] Upstream: RS_AP_00137, RS_Diag_04278, RS_AP_00170, RS_AP_00171, RS_AP_00172, RS_AP_00173

explicit CommunicationControl (const ara::core::InstanceSpecifier &specifier, ConcurrencyType concurrencyType) noexcept;

Constructor of CommunicationControl.

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl
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 DiagnosticComControlInterface needs to be referenced by a DiagnosticServiceGenericMapping. ProcessMappingVio- Matching InstanceRef exists, but no matching (modelled) Process lation found that matches the (runtime) process. InstanceSpecifier- Violation message that is sent in case a constructor in the ara AlreadyInUseViola- framework was called with an InstanceSpecifier already in use in tion this process.

Parameter (in)

ParameterBeschreibung
specifierInstanceSpecifier to a PortPrototype of a DiagnosticComControlInterface.
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_00806
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00806@rel:R25-11#84cfda26
Content hash
84cfda26
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00806
Status: valid/unmigrated Version: rel:R25-11#b906b7ef 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_00806@rel:R25-11#b906b7ef
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#ca8fdfa92026-09-30
  • R19-11rel:R19-11#d7fe0baa2026-10-14
  • R20-11rel:R20-11#036e26a62026-10-14
  • R21-11rel:R21-11#036e26a62026-10-14
  • R22-11rel:R22-11#b571889a2026-10-14
  • R23-11rel:R23-11#934addf22026-10-14
  • R24-11rel:R24-11#726b2cfe2026-10-14
  • R25-11rel:R25-11#b906b7ef2026-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 CommunicationControl [SWS_DM_01677] Upstream: RS_AP_00147

CommunicationControl (CommunicationControl &)=delete;

CommunicationControl shall be a single not copy-able instance.

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl

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

Record
AUTOSAR/AP/record/SWS_DM_01677
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01677@rel:R25-11#7ad103d3
Content hash
7ad103d3
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01677
Status: valid/unmigrated Version: rel:R25-11#5a19d864 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_01677@rel:R25-11#5a19d864
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#e585da4b2026-09-30
  • R23-11rel:R23-11#0dccfa442026-10-14
  • R24-11rel:R24-11#5a19d8642026-10-14
  • R25-11rel:R25-11#5a19d8642026-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 CommunicationControl [SWS_DM_01678] Upstream: RS_AP_00147

CommunicationControl (CommunicationControl &&) noexcept=delete;

Move constructor of CommunicationControl.

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl

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

Record
AUTOSAR/AP/record/SWS_DM_01678
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01678@rel:R25-11#12dd35f5
Content hash
12dd35f5
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01678
Status: valid/unmigrated Version: rel:R25-11#6048a835 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_01678@rel:R25-11#6048a835
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#2554e0632026-09-30
  • R23-11rel:R23-11#dd6e581d2026-10-14
  • R24-11rel:R24-11#6048a8352026-10-14
  • R25-11rel:R25-11#6048a8352026-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_00809] Upstream: RS_AP_00119, RS_AP_00139, RS_Diag_04278

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: e8c1958af1e8 Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

usar

El método Offer de la clase ara::diag::CommunicationControl (cabecera #include "ara/diag/communication_control.h") permite al Diagnostic Management (DM) reenviar peticiones de diagnóstico entrantes para el control de la comunicación a la instancia del manejador que las proporciona [SWS_DM_00809]. La llamada se realiza sin parámetros y devuelve el tipo ara::core::Result<void> [SWS_DM_00809]. Al no utilizarse ningún ara::core::Future ni mecanismo de devolución de llamada (callback), la ejecución debe interpretarse como síncrona.

Manejo de errores

En caso de éxito, la función devuelve un ara::core::Result vacío. Si el servicio ya se había ofrecido previamente para esta instancia, la llamada falla y devuelve el código de error DiagOfferErrc::kAlreadyOffered con semántica de reversión [SWS_DM_00809]. Este estado de error se corresponde con el tratamiento de errores uniforme para ofertas de diagnóstico en Adaptive AUTOSAR, tal y como está especificado, por ejemplo, en DiagErrc [SWS_DM_00514] así como en DiagReportingErrc [SWS_DM_00560].

Concurrencia y restricciones

La función está declarada como noexcept y es segura frente a excepciones (exception safe), aunque explícitamente no es segura para subprocesos (not thread-safe) [SWS_DM_00809]. Por lo tanto, las llamadas sobre la misma instancia deben ser sincronizadas por la aplicación llamadora para evitar condiciones de carrera durante el registro.

Interacción

El patrón de registro implementado mediante Offer es un modismo central en Diagnostic Management y se utiliza coherentemente a través de los manejadores, por ejemplo en rutinas [SWS_DM_00557], servicios UDS generales [SWS_DM_00619], interfaces de Security Access [SWS_DM_00766] así como servicios de subida y bajada (up- y download) [SWS_DM_00792] [SWS_DM_00802]. Cabe señalar aquí la distinción respecto a la infraestructura de comunicación: tal como se destaca en AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 «Monitors», se trata de una implementación específica de diagnóstico que no debe confundirse con ara::com.

Esta nota de uso ha sido seleccionada por una IA para la versión R25-11 y se basa exclusivamente en los documentos de especificación de AUTOSAR Adaptive.

Guía del implementador pendiente (complejidad I1)

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

TypBeschreibung
ara::core::Result< void >Returns nothing or an error.

Fehler

FehlercodeBeschreibung
DiagOfferErrc::kAlreadyOfferedrollback_semantics The service is already offered.

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

Record
AUTOSAR/AP/record/SWS_DM_00809
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00809@rel:R25-11#6ba0c723
Content hash
6ba0c723
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00809
Status: valid/unmigrated Version: rel:R25-11#5af0f990 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_00809@rel:R25-11#5af0f990
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#a85f13212026-09-30
  • R19-11rel:R19-11#9f02ccdb2026-10-14
  • R20-11rel:R20-11#2be7c40f2026-10-14
  • R21-11rel:R21-11#6e3abbe82026-10-14
  • R22-11rel:R22-11#65d2217e2026-10-14
  • R23-11rel:R23-11#bbb1cf592026-10-14
  • R24-11rel:R24-11#246db6952026-10-14
  • R25-11rel:R25-11#5af0f9902026-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_00810] Upstream: RS_Diag_04278

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: 5bbcf442e7ca Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

La función miembro StopOffer de la clase ara::diag::CommunicationControl sirve para desactivar el reenvío de mensajes de solicitud de diagnóstico (Request Messages) procedentes de Diagnostic Management (DM) a la instancia [SWS_DM_00810]. La interfaz se incluye mediante el archivo de cabecera ara/diag/communication_control.h AUTOSAR_AP_SWS_Diagnostics §8.7.1.1.3.3 «StopOffer». El método no recibe parámetros de entrada y no posee valor de retorno (void).

Respecto al tratamiento de errores, la función está declarada como noexcept y especificada como segura frente a excepciones (exception safe) [SWS_DM_00810]. En caso de error, ni se devuelven códigos de error ni se desencadenan notificaciones de error específicas (como eventos DEM o DET).

En cuanto a la concurrencia, StopOffer está catalogada explícitamente como no segura para hilos (not thread-safe) [SWS_DM_00810]. Por lo tanto, las llamadas simultáneas sobre la misma instancia de CommunicationControl deben sincronizarse del lado de la aplicación. Además, es de suponer que tenga sentido realizar una llamada únicamente tras un previo ofrecimiento del servicio, por ejemplo cuando el control de comunicación no esté disponible temporalmente o la aplicación se esté cerrando. Pregunta Q-c9079c49581363f7 (abierta)

El concepto sigue el esquema estandarizado para servicios de diagnóstico adaptativos: clases afines como ara::diag::Authentication [SWS_DM_01131], ara::diag::DownloadService [SWS_DM_00793], ara::diag::EcuResetRequest [SWS_DM_01017] y ara::diag::GenericUDSService [SWS_DM_00620] también emplean StopOffer con semántica análoga. Tal como se explica en la especificación, aunque la nomenclatura se inspira en el ofrecimiento de servicios de ara::com, representa una implementación independiente para interfaces de diagnóstico y no debe confundirse con ella AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 «Monitors».

Esta indicación de uso fue generada por una IA sobre la base de la especificación AUTOSAR Adaptive R25-11.

Guía del implementador pendiente (complejidad I2)

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl
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_00810
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00810@rel:R25-11#9406f621
Content hash
9406f621
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00810
Status: valid/unmigrated Version: rel:R25-11#c84b3f30 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_00810@rel:R25-11#c84b3f30
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#e7d48b8a2026-09-30
  • R19-11rel:R19-11#28eab4cf2026-10-14
  • R20-11rel:R20-11#ee8709992026-10-14
  • R21-11rel:R21-11#ff87dbf12026-10-14
  • R22-11rel:R22-11#ae33a1b32026-10-14
  • R23-11rel:R23-11#4f252d562026-10-14
  • R24-11rel:R24-11#be84a84f2026-10-14
  • R25-11rel:R25-11#c84b3f302026-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_01675] Upstream: RS_AP_00147

CommunicationControl & operator= (CommunicationControl &)=delete;

CommunicationControl shall be a single not assignable instance.

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl

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

Record
AUTOSAR/AP/record/SWS_DM_01675
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01675@rel:R25-11#89ce744e
Content hash
89ce744e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01675
Status: valid/unmigrated Version: rel:R25-11#6b33e9a5 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_01675@rel:R25-11#6b33e9a5
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#732d4ac82026-09-30
  • R23-11rel:R23-11#d435003d2026-10-14
  • R24-11rel:R24-11#6b33e9a52026-10-14
  • R25-11rel:R25-11#6b33e9a52026-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_01676] Upstream: RS_AP_00147

CommunicationControl & operator= (CommunicationControl &&)=delete;

Move assignment operator of CommunicationControl.

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl

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

Record
AUTOSAR/AP/record/SWS_DM_01676
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01676@rel:R25-11#a2a805b5
Content hash
a2a805b5
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01676
Status: valid/unmigrated Version: rel:R25-11#3330d235 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_01676@rel:R25-11#3330d235
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#cfa3ff932026-09-30
  • R23-11rel:R23-11#fd2c0d6a2026-10-14
  • R24-11rel:R24-11#3330d2352026-10-14
  • R25-11rel:R25-11#3330d2352026-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 ~CommunicationControl [SWS_DM_00807] Upstream: RS_AP_00134, RS_Diag_04278

virtual ~CommunicationControl () noexcept;

Destructor of class CommunicationControl.

Header-Datei#include "ara/diag/communication_control.h"
Scopeclass ara::diag::CommunicationControl
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_00807
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00807@rel:R25-11#68e40d84
Content hash
68e40d84
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00807
Status: valid/unmigrated Version: rel:R25-11#fef30cdd 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_00807@rel:R25-11#fef30cdd
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#0d1c8e412026-09-30
  • R19-11rel:R19-11#50d5e63a2026-10-14
  • R20-11rel:R20-11#83d511c52026-10-14
  • R21-11rel:R21-11#3df09df82026-10-14
  • R22-11rel:R22-11#cf774c8f2026-10-14
  • R23-11rel:R23-11#b59cefc12026-10-14
  • R24-11rel:R24-11#058998e02026-10-14
  • R25-11rel:R25-11#fef30cdd2026-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