DEENESPTFRRUARHIKOZHNL

classe 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

Guide utilisateurGÉNÉRÉ PAR IA

Permet aux applications de traiter les requêtes de diagnostic du service UDS 0x28 pour le contrôle de la communication.
GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : ae3aac538bd3 Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Permet aux applications de traiter les requêtes de diagnostic du service UDS 0x28 pour le contrôle de la communication.

La classe ara::diag::CommunicationControl sert, dans AUTOSAR Adaptive, d'interface pour le traitement du service UDS 0x28 (CommunicationControl) dédié à la commutation des canaux de communication [SWS_DM_00808]. Après l'instanciation basée sur les modèles via un InstanceSpecifier, Offer() active le réacheminement des requêtes par le Diagnostic Manager, lesquelles sont ensuite traitées de manière asynchrone via CommCtrlRequest [SWS_DM_00806], [SWS_DM_00809]. En tant qu'élément strictement unique, la classe exclut les opérations de copie ainsi que de déplacement et requiert une désinscription via StopOffer() avant la terminaison [SWS_DM_00810].

Contexte

La classe ara::diag::CommunicationControl définit l'interface standardisée pour le déroulement du service de diagnostic UDS 0x28 (CommunicationControl) dans l'AUTOSAR Adaptive Platform AUTOSAR_AP_SWS_Diagnostics, p. 70. En tant que classe de base abstraite, elle sert d'intermédiaire entre le Diagnostic Manager (DM) et la fonctionnalité de diagnostic spécifique à l'application avec laquelle l'envoi ou la réception de certains messages de communication dans le réseau du véhicule est contrôlé. Le logiciel d'application dérive de cette classe et implémente la méthode purement virtuelle CommCtrlRequest afin de recevoir et d'exécuter les instructions de commande entrantes [SWS_DM_00808]. La liaison au modèle système AUTOSAR s'effectue via un ara::core::InstanceSpecifier qui référence un PortPrototype d'un DiagnosticComControlInterface [SWS_DM_00806].

Cycle de vie

Une instance est explicitement créée via le constructeur en indiquant le ara::core::InstanceSpecifier ainsi que le modèle de concurrence ConcurrencyType (kConcurrent ou kNotConcurrent) [SWS_DM_00806]. La classe possède une sémantique d'unicité stricte et n'est ni copiable ni déplaçable : le constructeur de copie [SWS_DM_01677] et le constructeur de déplacement [SWS_DM_01678] ainsi que l'opérateur d'assignation par copie [SWS_DM_01675] et l'opérateur d'assignation par déplacement [SWS_DM_01676] sont tous supprimés (=delete).

Après la création, l'instance reste d'abord inactive. Ce n'est que par l'appel de Offer() que le Diagnostic Manager est autorisé à réacheminer les requêtes de diagnostic entrantes vers le gestionnaire [SWS_DM_00809]. Inversement, StopOffer() retire cette autorisation et désactive le réacheminement [SWS_DM_00810]. La destruction s'effectue via le destructeur virtuel [SWS_DM_00807]. Interprétation : il devrait être nécessaire d'appeler StopOffer() avant la destruction de l'objet afin que le Diagnostic Manager ne maintienne pas de réacheminements orphelins. Question Q-f67e35c9fea508d8 (ouverte)

En matière de concurrence, le constructeur est thread-safe [SWS_DM_00806], tandis que le destructeur [SWS_DM_00807], Offer() [SWS_DM_00809] et StopOffer() [SWS_DM_00810] ne sont pas thread-safe. L'exécution de CommCtrlRequest est conditionnellement thread-safe (conditional) : le ConcurrencyType défini dans le constructeur détermine si l'implémentation doit être thread-safe [SWS_DM_00808].

Parcours d'utilisation

Le flux régulier comprend l'instanciation de la classe dérivée, l'enregistrement du service, le traitement asynchrone des requêtes de diagnostic et la désinscription finale :

  1. Initialisation : l'application instancie le gestionnaire en spécifiant le InstanceSpecifier et le ConcurrencyType souhaité [SWS_DM_00806].
  2. Offre de service : le service est activé auprès du Diagnostic Manager via Offer() [SWS_DM_00809].
  3. Traitement de requête : si une requête UDS pour le service 0x28 arrive avec une sous-fonction quelconque, le Diagnostic Manager appelle CommCtrlRequest [SWS_DM_00808]. Les paramètres comprennent :
    • controlType (ComCtrlRequestParamsType) : tous les paramètres de requête UDS, y compris les éléments optionnels.
    • metaInfo (const MetaInfo&) : métadonnées relatives à la requête de diagnostic.
    • cancellationHandler (CancellationHandler) : sert à l'interrogation d'état via IsCanceled() ainsi qu'à l'enregistrement d'une fonction de rappel d'annulation via SetNotifier().
  4. Retour d'information : le traitement se termine de manière asynchrone et signale le résultat via ara::core::Future<void> [SWS_DM_00808].
  5. Désinscription : avant l'arrêt ou la terminaison, l'application arrête le réacheminement au moyen de StopOffer() [SWS_DM_00810].
Déroulement d'appel et de traitement pour CommunicationControl (0x28)ApplicationCommunicationControlDiagnostic ManagerKonstruktor(specifier, concurrencyType)Offer()Enregistrement pour UDS 0x28Confirmation (ou kAlreadyOffered)Result<void>Use Case: Diagnoseanfrage bearbeitenCommCtrlRequest(controlType, metaInfo, cancellationHandler)Verarbeitung / Abfrage cancellationHandlerFuture<void> (succès ou DiagUdsNrcErrc)Use Case: Dienst deregistrierenStopOffer()Weiterleitung beenden

Diagramme de séquence : déroulement typique depuis l'initialisation jusqu'à la désinscription en passant par le traitement de requêtes UDS 0x28. Sources : [SWS_DM_00806], [SWS_DM_00808], [SWS_DM_00809], [SWS_DM_00810].

Scénarios d'erreur

Dès la construction, des incohérences dans le modèle AUTOSAR peuvent conduire à des violations à l'exécution (violations) [SWS_DM_00806] :

  • InstanceSpecifierMappingIntegrityViolation : le InstanceSpecifier ne peut pas être résolu dans le contexte de l'exécutable ou ne renvoie pas à un PortPrototype.
  • PortInterfaceMappingViolation : le PortPrototype typé par DiagnosticComControlInterface n'est pas référencé par un DiagnosticServiceGenericMapping.
  • ProcessMappingViolation : une référence d'instance correspondante existe, mais il n'y a aucun processus modélisé qui corresponde au processus actuel.
  • InstanceSpecifierAlreadyInUseViolation : l'identifiant est déjà utilisé dans le même processus par une autre instance.

En cours d'exploitation, Offer() signale via la valeur de retour ara::core::Result<void> l'erreur DiagOfferErrc::kAlreadyOffered si le service a déjà été proposé auparavant et est toujours actif [SWS_DM_00809]. Si une requête de diagnostic ne peut pas être satisfaite d'un point de vue fonctionnel dans CommCtrlRequest, la méthode renvoie via le ara::core::Future<void> un Negative Response Code (NRC) conformément à l'ISO 14229-1 au moyen de DiagUdsNrcErrc [SWS_DM_00808].

Ce guide de classe a été élaboré par un assistant de curation IA sur la base d'AUTOSAR Adaptive R25-11.

Carte des membres

Diagramme de classes

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

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

Vue détaillée

Sélectionnez une entrée dans le plan.

Constructeurs et destructeur

Constructor of CommunicationControl.

Surcharges 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éthodes

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 fonction

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

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

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

void StopOffer () noexcept;

Opérateurs

operator= fonction 2

CommunicationControl shall be a single not assignable instance.

Surcharges = 2

Types imbriqués

Documentation des méthodes

fonction 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.

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

La méthode purement virtuelle ara::diag::CommunicationControl::CommCtrlRequest ([SWS_DM_00808]) est appelée par l'instance de Diagnostic Server pour traiter les requêtes de diagnostic du service UDS 0x28 (CommunicationControl) ([SWS_DM_00865], SWS Diagnostics §7.3.2.8.10 « Service 0x28 – CommunicationControl »). Tous les paramètres de requête UDS, y compris la sous-fonction, sont transmis regroupés via la structure controlType ([SWS_DM_00808]). L'appel renvoie un ara::core::Future<void>, moyennant quoi le traitement s'effectue de manière asynchrone. Via le paramètre cancellationHandler, l'application peut interroger l'état d'interruption au moyen de IsCanceled() ou enregistrer via SetNotifier() un rappel pour l'interruption de la conversation ([SWS_DM_00808]).

Si l'application termine le traitement sans erreur, le Diagnostic Server envoie une réponse UDS positive ([SWS_DM_00199]). Si une erreur survient, celle-ci doit être signalée via ara::diag::DiagUdsNrcErrc sous forme de Negative Response Code (NRC) approprié selon l'ISO 14229-1 ([SWS_DM_00808]) ; le serveur répond alors négativement à la requête de service avec ce code d'erreur ([SWS_DM_00866]). Le serveur rejette par avance les sous-fonctions non configurées avec le NRC 0x12 (kSubFunctionNotSupported) ([SWS_DM_00252]).

La méthode est déclarée avec noexcept et sans exception ([SWS_DM_00808], SWS Diagnostics §8.7.1.1.3.1 « CommCtrlRequest »). Sa sécurité des threads est conditionnelle : le fait que la fonction doive être implémentée de manière thread-safe est déterminé via le paramètre de constructeur ConcurrencyType de l'instance ([SWS_DM_00808]). La commutation effective des modes de communication devrait s'effectuer de manière asynchrone en arrière-plan avant que le future ne soit résolu. Question Q-8a8e1bd2585fa859 (ouverte)

Ce texte a été créé et vérifié par une IA. Toutes les affirmations reposent exclusivement sur les documents de spécification d'AUTOSAR R25-11.

Guide de l'implémenteur à venir (complexité 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#8b2b39fc
Content hash
8b2b39fc
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

fonction 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#afbf14ba
Content hash
afbf14ba
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

fonction 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#36c005d2
Content hash
36c005d2
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

fonction 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#b27cba65
Content hash
b27cba65
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

fonction 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.

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

Utilisation

La méthode Offer de la classe ara::diag::CommunicationControl (en-tête #include "ara/diag/communication_control.h") permet au Diagnostic Management (DM) de relayer les requêtes de diagnostic entrantes relatives au contrôle de la communication vers l'instance de gestionnaire qui les fournit [SWS_DM_00809]. L'appel s'effectue sans paramètre et renvoie le type ara::core::Result<void> [SWS_DM_00809]. Comme aucun ara::core::Future ni mécanisme de rappel n'est utilisé, l'exécution doit être interprétée comme étant synchrone.

Gestion des erreurs

En cas de succès, la fonction renvoie un ara::core::Result vide. Si le service a déjà été proposé auparavant pour cette instance, l'appel échoue et renvoie le code d'erreur DiagOfferErrc::kAlreadyOffered avec une sémantique de rollback [SWS_DM_00809]. Cet état d'erreur correspond au traitement d'erreur unifié pour les offres de diagnostic dans Adaptive AUTOSAR, tel qu'il est spécifié par exemple dans DiagErrc [SWS_DM_00514] ainsi que dans DiagReportingErrc [SWS_DM_00560].

Concurrence et restrictions

La fonction est déclarée comme noexcept et est sûre vis-à-vis des exceptions (exception safe), mais explicitement non sûre au niveau des threads (not thread-safe) [SWS_DM_00809]. Les appels sur une même instance doivent donc être synchronisés par l'application appelante afin d'éviter les conditions de concurrence lors de l'enregistrement.

Interaction

Le modèle d'enregistrement mis en œuvre par Offer constitue un idiome central au sein du Diagnostic Management et est utilisé de manière cohérente sur l'ensemble des gestionnaires, par exemple pour les routines [SWS_DM_00557], les services UDS généraux [SWS_DM_00619], les interfaces Security Access [SWS_DM_00766] ainsi que les services de téléversement et de téléchargement [SWS_DM_00792] [SWS_DM_00802]. Il convient de noter ici la distinction avec l'infrastructure de communication : comme le souligne AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 « Monitors », il s'agit d'une implémentation spécifique au diagnostic, qui ne doit pas être confondue avec ara::com.

Cette note d'utilisation a été préparée par une IA pour la version R25-11 et se fonde exclusivement sur les documents de spécification d'AUTOSAR Adaptive.

Guide de l'implémenteur à venir (complexité 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#e17f143a
Content hash
e17f143a
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

fonction StopOffer [SWS_DM_00810] Upstream: RS_Diag_04278

void StopOffer () noexcept;

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

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

La fonction membre StopOffer de la classe ara::diag::CommunicationControl sert à désactiver le transfert des messages de requête de diagnostic (Request Messages) de Diagnostic Management (DM) vers l'instance [SWS_DM_00810]. L'interface est incluse via le fichier d'en-tête ara/diag/communication_control.h AUTOSAR_AP_SWS_Diagnostics §8.7.1.1.3.3 « StopOffer ». La méthode ne prend aucun paramètre de transmission et ne possède aucune valeur de retour (void).

Concernant le traitement des erreurs, la fonction est déclarée comme noexcept et spécifiée comme sûre vis-à-vis des exceptions (exception safe) [SWS_DM_00810]. Aucun code d'erreur n'est renvoyé et aucun message d'erreur spécifique (tel que des événements DEM ou DET) n'est déclenché en cas d'erreur.

En matière de concurrence, StopOffer est explicitement classé comme non sûr pour les threads (not thread-safe) [SWS_DM_00810]. Les appels simultanés sur la même instance de CommunicationControl doivent par conséquent être synchronisés du côté de l'application. De plus, un appel ne devrait judicieusement avoir lieu qu'après une mise à disposition préalable du service, par exemple lorsque le contrôle de communication n'est temporairement pas disponible ou que l'application est en cours d'arrêt. Question Q-c9079c49581363f7 (ouverte)

Le concept suit le schéma standardisé pour les services de diagnostic adaptatifs : des classes apparentées telles que ara::diag::Authentication [SWS_DM_01131], ara::diag::DownloadService [SWS_DM_00793], ara::diag::EcuResetRequest [SWS_DM_01017] et ara::diag::GenericUDSService [SWS_DM_00620] utilisent également StopOffer avec une sémantique analogue. Comme expliqué dans la spécification, bien que la dénomination soit inspirée du service offering de ara::com, elle constitue une implémentation distincte pour les interfaces de diagnostic et ne doit pas être confondue avec celui-ci AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 « Monitors ».

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

Guide de l'implémenteur à venir (complexité 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#73efa0ff
Content hash
73efa0ff
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

fonction 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#98433873
Content hash
98433873
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

fonction 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#56c8a7a8
Content hash
56c8a7a8
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

fonction ~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#803fa371
Content hash
803fa371
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