DEENESPTFRRUARHIKOZHNL

class 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

User GuideAI-GENERATED

Enables applications to process diagnostic requests of the UDS service 0x28 for communication control.
AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: ae3aac538bd3 Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

Enables applications to process diagnostic requests of the UDS service 0x28 for communication control.

In AUTOSAR Adaptive, the class ara::diag::CommunicationControl serves as an interface for processing the UDS service 0x28 (CommunicationControl) for switching communication channels [SWS_DM_00808]. After model-based instantiation via an InstanceSpecifier, Offer() enables the forwarding of requests by the Diagnostic Manager, which are subsequently processed asynchronously via CommCtrlRequest [SWS_DM_00806], [SWS_DM_00809]. As a strict non-copyable and non-movable type, the class excludes copy as well as move operations and requires deregistration via StopOffer() before termination [SWS_DM_00810].

Context

The class ara::diag::CommunicationControl defines the standardized interface for handling the UDS diagnostic service 0x28 (CommunicationControl) in the AUTOSAR Adaptive Platform AUTOSAR_AP_SWS_Diagnostics, p. 70. As an abstract base class, it arbitrates between the Diagnostic Manager (DM) and the application-specific diagnostic functionality used to control the transmission or reception of specific communication messages in the in-vehicle network. The application software derives from this class and implements the pure virtual method CommCtrlRequest to receive and execute incoming control instructions [SWS_DM_00808]. Binding to the AUTOSAR system model is achieved via an ara::core::InstanceSpecifier referencing an PortPrototype of an DiagnosticComControlInterface [SWS_DM_00806].

Lifecycle

An instance is created explicitly via the constructor by specifying the ara::core::InstanceSpecifier as well as the concurrency model ConcurrencyType (kConcurrent or kNotConcurrent) [SWS_DM_00806]. The class possesses strict unique semantics and is neither copyable nor movable: both the copy constructor [SWS_DM_01677] and the move constructor [SWS_DM_01678], as well as the copy assignment operator [SWS_DM_01675] and the move assignment operator [SWS_DM_01676], are deleted (=delete).

After creation, the instance initially remains inactive. Only upon calling Offer() is the Diagnostic Manager authorized to forward incoming diagnostic requests to the handler [SWS_DM_00809]. Conversely, StopOffer() revokes this authorization and disables forwarding [SWS_DM_00810]. Destruction takes place via the virtual destructor [SWS_DM_00807]. Interpretation: Calling StopOffer() prior to the object's destruction is likely required so that the Diagnostic Manager does not maintain orphan forwardings. Question Q-f67e35c9fea508d8 (open)

Regarding concurrency, the constructor is thread-safe [SWS_DM_00806], whereas the destructor [SWS_DM_00807], Offer() [SWS_DM_00809], and StopOffer() [SWS_DM_00810] are not thread-safe. The execution of CommCtrlRequest is conditionally thread-safe (conditional): whether the implementation must be thread-safe is determined by the ConcurrencyType specified in the constructor [SWS_DM_00808].

Usage Path

The regular flow comprises the instantiation of the derived class, service registration, asynchronous processing of diagnostic requests, and final deregistration:

  1. Initialization: The application instantiates the handler by specifying the InstanceSpecifier and the requested ConcurrencyType [SWS_DM_00806].
  2. Service offer: The service is enabled at the Diagnostic Manager via Offer() [SWS_DM_00809].
  3. Request processing: When a UDS request for service 0x28 arrives with any subfunction, the Diagnostic Manager calls CommCtrlRequest [SWS_DM_00808]. The parameters comprise:
    • controlType (ComCtrlRequestParamsType): All UDS request parameters including optional elements.
    • metaInfo (const MetaInfo&): Meta-information regarding the diagnostic request.
    • cancellationHandler (CancellationHandler): Used for status polling via IsCanceled() as well as for registering a cancellation callback function via SetNotifier().
  4. Feedback: Processing completes asynchronously and reports the result back via ara::core::Future<void> [SWS_DM_00808].
  5. Deregistration: Prior to shutdown or termination, the application stops forwarding using StopOffer() [SWS_DM_00810].
Invocation and processing sequence for CommunicationControl (0x28)ApplicationCommunicationControlDiagnostic ManagerKonstruktor(specifier, concurrencyType)Offer()Registration for UDS 0x28Confirmation (or kAlreadyOffered)Result<void>Use Case: Diagnoseanfrage bearbeitenCommCtrlRequest(controlType, metaInfo, cancellationHandler)Verarbeitung / Abfrage cancellationHandlerFuture<void> (success or DiagUdsNrcErrc)Use Case: Dienst deregistrierenStopOffer()Weiterleitung beenden

Sequence diagram: Typical sequence from initialization through UDS 0x28 request processing to deregistration. Sources: [SWS_DM_00806], [SWS_DM_00808], [SWS_DM_00809], [SWS_DM_00810].

Error Scenarios

Already during construction, inconsistencies in the AUTOSAR model can lead to runtime violations [SWS_DM_00806]:

  • InstanceSpecifierMappingIntegrityViolation: The InstanceSpecifier cannot be resolved in the context of the executable or does not reference an PortPrototype.
  • PortInterfaceMappingViolation: The PortPrototype typed by DiagnosticComControlInterface is not referenced by an DiagnosticServiceGenericMapping.
  • ProcessMappingViolation: A matching instance reference exists, but there is no modeled process matching the current process.
  • InstanceSpecifierAlreadyInUseViolation: The identifier is already used by another instance in the same process.

During normal operation, Offer() reports the error DiagOfferErrc::kAlreadyOffered via the return value ara::core::Result<void> if the service was already previously offered and is still active [SWS_DM_00809]. If a diagnostic request cannot be satisfied functionally in CommCtrlRequest, the method returns a Negative Response Code (NRC) in accordance with ISO 14229-1 via DiagUdsNrcErrc using the ara::core::Future<void> [SWS_DM_00808].

This class guide was created by an AI curation assistant based on AUTOSAR Adaptive R25-11.

Member map

Class diagram

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

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

Detail view

Select an entry in the outline.

Constructors and destructor

Constructor of CommunicationControl.

Overloads 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;

Methods

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 function

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

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

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

void StopOffer () noexcept;

Operators

operator= function 2

CommunicationControl shall be a single not assignable instance.

Overloads = 2

Embedded types

Method documentation

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

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 8fa21d673414 Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The pure virtual method ara::diag::CommunicationControl::CommCtrlRequest ([SWS_DM_00808]) is called by the Diagnostic Server instance to process diagnostic requests of UDS service 0x28 (CommunicationControl) ([SWS_DM_00865], SWS Diagnostics §7.3.2.8.10 “Service 0x28 – CommunicationControl”). All UDS request parameters including the subfunction are passed bundled via the structure controlType ([SWS_DM_00808]). The call returns a ara::core::Future<void>, whereby processing is performed asynchronously. Via the parameter cancellationHandler, the application can query the cancellation status by means of IsCanceled() or register a callback for cancellation of the conversation via SetNotifier() ([SWS_DM_00808]).

If the application completes processing without error, the Diagnostic Server sends a positive UDS response ([SWS_DM_00199]). If an error occurs, it must be reported as an appropriate Negative Response Code (NRC) according to ISO 14229-1 via ara::diag::DiagUdsNrcErrc ([SWS_DM_00808]); the server then answers the service request negatively with this error code ([SWS_DM_00866]). The server rejects non-configured subfunctions in advance with NRC 0x12 (kSubFunctionNotSupported) ([SWS_DM_00252]).

The method is declared with noexcept and is exception-safe ([SWS_DM_00808], SWS Diagnostics §8.7.1.1.3.1 “CommCtrlRequest”). Its thread safety is conditional: whether the function must be implemented thread-safely is determined via the constructor parameter ConcurrencyType of the instance ([SWS_DM_00808]). The actual switching of communication modes is likely to take place asynchronously in the background before the future is resolved. Question Q-8a8e1bd2585fa859 (open)

This text was created and curated by an AI. All statements are based exclusively on the specification documents of AUTOSAR R25-11.

Implementer's Guide to follow (complexity 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#424df422
Content hash
424df422
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

function 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#ca8fdfa9
Content hash
ca8fdfa9
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

function 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#e585da4b
Content hash
e585da4b
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

function 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#2554e063
Content hash
2554e063
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

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

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: e8c1958af1e8 Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

use

The method Offer of class ara::diag::CommunicationControl (header #include "ara/diag/communication_control.h") enables Diagnostic Management (DM) to forward incoming diagnostic requests for communication control to the providing handler instance [SWS_DM_00809]. The call takes no parameters and returns the type ara::core::Result<void> [SWS_DM_00809]. Since neither ara::core::Future nor a callback mechanism is used, execution is to be interpreted as synchronous.

Error handling

On success, the function returns an empty ara::core::Result. If the service was already offered previously for this instance, the call fails and returns error code DiagOfferErrc::kAlreadyOffered with rollback semantics [SWS_DM_00809]. This error state corresponds to the uniform error handling for diagnostic offerings in Adaptive AUTOSAR, as specified for instance in DiagErrc [SWS_DM_00514] and DiagReportingErrc [SWS_DM_00560].

Concurrency and Limitations

The function is declared as noexcept and exception safe, but explicitly not thread-safe [SWS_DM_00809]. Calls on the same instance must therefore be synchronized by the calling application to prevent race conditions during registration.

Interaction

The registration pattern implemented by Offer is a central idiom in Diagnostic Management and is used consistently across handlers, for example for routines [SWS_DM_00557], general UDS services [SWS_DM_00619], security access interfaces [SWS_DM_00766], and upload/download services [SWS_DM_00792] [SWS_DM_00802]. The distinction from the communication infrastructure must be noted: As highlighted in AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”, this is a diagnostic-specific implementation that must not be confused with ara::com.

This usage note was curated by an AI for release R25-11 and is based exclusively on the specification documents of AUTOSAR Adaptive.

Implementer's Guide to follow (complexity 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#a85f1321
Content hash
a85f1321
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

function StopOffer [SWS_DM_00810] Upstream: RS_Diag_04278

void StopOffer () noexcept;

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

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 5bbcf442e7ca Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The member function StopOffer of class ara::diag::CommunicationControl serves to disable the forwarding of incoming diagnostic request messages from Diagnostic Management (DM) to the instance [SWS_DM_00810]. The interface is included via the header file ara/diag/communication_control.h AUTOSAR_AP_SWS_Diagnostics §8.7.1.1.3.3 “StopOffer”. The method takes no input parameters and has no return value (void).

Regarding error handling, the function is declared as noexcept and specified as exception safe (exception safe) [SWS_DM_00810]. Neither error codes are returned nor specific error messages (such as DEM or DET events) triggered in the event of an error.

Regarding concurrency, StopOffer is explicitly classified as not thread-safe (not thread-safe) [SWS_DM_00810]. Simultaneous calls on the same instance of CommunicationControl must consequently be synchronized by the application. Moreover, a call would reasonably only occur after the service was previously offered, for example when communication control is temporarily unavailable or the application is being shut down. Question Q-c9079c49581363f7 (open)

The concept follows the standardized scheme for adaptive diagnostic services: Related classes such as ara::diag::Authentication [SWS_DM_01131], ara::diag::DownloadService [SWS_DM_00793], ara::diag::EcuResetRequest [SWS_DM_01017], and ara::diag::GenericUDSService [SWS_DM_00620] also use StopOffer with analogous semantics. As explained in the specification, the naming is indeed based on the service offering from ara::com, but represents an independent implementation for diagnostic interfaces and must not be confused with it AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”.

This usage note was generated by an AI based on the specification AUTOSAR Adaptive R25-11.

Implementer's Guide to follow (complexity 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#e7d48b8a
Content hash
e7d48b8a
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

function 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#732d4ac8
Content hash
732d4ac8
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

function 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#cfa3ff93
Content hash
cfa3ff93
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

function ~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#0d1c8e41
Content hash
0d1c8e41
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