DEENESPTFRRUARHIKOZHNL

class ara::diag::Conversation

[SWS_DM_00693] Upstream: RS_Diag_04166, RS_Diag_04169

class Conversation final {...};

Conversation interface.

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

User GuideAI-GENERATED

Enables monitoring active diagnostic channels as well as controlling diagnostic session and security level.
AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 1824b6dbecd2 Provenance Open questions (2)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

Enables monitoring active diagnostic channels as well as controlling diagnostic session and security level.

The class ara::diag::Conversation represents a diagnostic communication channel for monitoring activity status, diagnostic session, and security level as well as for resetting to the default session [SWS_DM_00692] [SWS_DM_00701]. Applications obtain instances exclusively as references via static search functions, since custom instantiations as well as copy and move operations are deleted [SWS_DM_02090]. While read status queries can be executed thread-safely, callback registrations and resetting the session require external synchronization.

Context

The class ara::diag::Conversation represents the interface to a communication channel between an external diagnostic tester and the Adaptive Platform SWS Diagnostics §8.2 “Conversation”. It serves as a link between the application and the internal Diagnostic Management (DM) to track and control ongoing diagnostic activities. Through its instances, Adaptive Applications gain insight into the current connection state [SWS_DM_00694], the active diagnostic session [SWS_DM_00696], the security level [SWS_DM_00698], and the identification characteristics of the channel [SWS_DM_00700].

diag_kontext app Adaptive Anwendung conv ara::diag::Conversation app->conv GetConversation() / Statusabfragen conv->app Notifier-Callbacks dm Diagnostic Management conv->dm ResetToDefaultSession() dm->conv Verwaltung & Lebenszyklus

Context diagram: Integration of ara::diag::Conversation between application and Diagnostic Management. Sources: [SWS_DM_00692], [SWS_DM_00782], SWS Diagnostics §8.2 “Conversation”.

Lifecycle

Instances of ara::diag::Conversation are entirely instantiated and managed by the Diagnostic Management daemon. Manual creation, copying, or moving by the application is excluded: both the copy constructor [SWS_DM_02090] and move constructor [SWS_DM_02092] as well as the assignment operators [SWS_DM_02091] [SWS_DM_02093] are deleted (=delete). The lifetime of the referenced objects is therefore likely directly tied to the runtime state of the diagnostic subsystem. Question Q-f8deca481d5b76e1 (open)

Access to existing instances occurs exclusively via static query functions. With GetAllConversations(), references to all configured connections can be retrieved [SWS_DM_00782], while GetCurrentActiveConversations() provides a list of all currently active channels whose activity status corresponds to kActive [SWS_DM_00783]. In addition, a specific connection can be resolved via GetConversation(metaInfo) based on the metadata of an ongoing diagnostic request [SWS_DM_00692].

Regarding concurrency, all read accesses to status and identifiers are specified as thread-safe [SWS_DM_00694] [SWS_DM_00696] [SWS_DM_00698]. Registering notification callbacks and resetting the session, on the other hand, are considered not thread-safe [SWS_DM_00695] [SWS_DM_00701] and require application-side synchronization.

Usage Path

A typical use case comprises obtaining the connection, registering notification functions, and selectively monitoring or manipulating the session state:

  • Obtain reference: For an incoming diagnostic request, the corresponding instance is obtained using GetConversation(metaInfo) [SWS_DM_00692].
  • Set up state monitoring: The application is notified of changes via the registration methods SetActivityNotifier() [SWS_DM_00695] [SWS_DM_02126], SetDiagnosticSessionNotifier() [SWS_DM_00697] [SWS_DM_02127], and SetSecurityLevelNotifier() [SWS_DM_00699] [SWS_DM_02128]. A repeated call overwrites the previously registered callback.
  • Query status: The instantaneous state can be determined synchronously with GetDiagnosticSession() [SWS_DM_00696] or GetDiagnosticSecurityLevel() [SWS_DM_00698]. Using GetDiagnosticSessionShortName() [SWS_DM_00707] and GetDiagnosticSecurityLevelShortName() [SWS_DM_00708], the enums can be resolved into human-readable short identifiers.
  • Reset session: If logic requires an abort or falling back to the base state, ResetToDefaultSession() resets the channel to the default session [SWS_DM_00701].
Usage sequence for ara::diag::ConversationApplicationConversationDiagnosticManagementUse Case: Connection terminationGetConversation(metaInfo)Result<Conversation&>Use Case: Callback-Registrierung & StatusabfrageSetDiagnosticSessionNotifier(notifier)Result<void>GetDiagnosticSession()Result<SessionControlType>Use Case: SitzungssteuerungResetToDefaultSession()Execute session changeResult<void>

Sequence diagram: Typical interaction sequence for registering notifiers, querying state, and resetting the session. Sources: [SWS_DM_00692], [SWS_DM_00697], [SWS_DM_00696], [SWS_DM_00701].

Error Scenarios

Methods of ara::diag::Conversation signal errors via ara::core::Result. If the basic functionality of Diagnostic Management is temporarily unavailable, GetConversation(), GetActivityStatus(), GetDiagnosticSession(), GetDiagnosticSecurityLevel(), and GetConversationIdentifier() fail with error code DiagErrc::kServiceNotAvailable [SWS_DM_00692] [SWS_DM_00694] [SWS_DM_00696] [SWS_DM_00698] [SWS_DM_00700]. Calls follow rollback semantics and remain without side effects.

For the string conversion functions GetDiagnosticSessionShortName() [SWS_DM_00707] and GetDiagnosticSecurityLevelShortName() [SWS_DM_00708], passing an unknown or invalid enumeration value results in error DiagErrc::kInvalidArgument. For the notifier registration methods as well as for ResetToDefaultSession(), no standardized error codes are defined in the specification [SWS_DM_00701].

This guide is based exclusively on the AUTOSAR Adaptive specification R25-11.

Member map

Class diagram

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

G nara__diag__Conversation235 Conversation + Conversation() + operator=() + GetActivityStatus() + GetAllConversations() + GetConversation() + GetConversationIdentifier() + GetCurrentActiveConversations() + GetDiagnosticSecurityLevel() + GetDiagnosticSecurityLevelShortName() + GetDiagnosticSession() + GetDiagnosticSessionShortName() + ResetToDefaultSession() + SetActivityNotifier() + SetDiagnosticSessionNotifier() + SetSecurityLevelNotifier()

Detail view

Select an entry in the outline.

Constructors and destructor

Conversation function 2

Copy constructor of conversation is deleted.

Overloads Conversation 2
Conversation (const Conversation &)=delete; SWS_DM_02090
Conversation (Conversation &&)=delete; SWS_DM_02092

Methods

Represents the status of an active conversation.

ara::core::Result< ActivityStatusType > GetActivityStatus () noexcept;

Get all possible conversations.

static ara::core::Vector< std::reference_wrapper< Conversation > > Get AllConversations () noexcept;

Get one conversation based on given MetaInfo.

static ara::core::Result< Conversation & > GetConversation (const Meta Info &metaInfo) noexcept;

Getter for the current identification properties of the active conversation.

Get all currently active conversations.

static ara::core::Vector< std::reference_wrapper< Conversation > > Get CurrentActiveConversations () noexcept;

Represents the current active diagnostic SecurityLevel of an active conversation.

ara::core::Result< SecurityLevelType > GetDiagnosticSecurityLevel () noexcept;

Converts the given diagnostic SecurityLevel into the ShortName.

Represents the current active diagnostic session of an active conversation.

ara::core::Result< SessionControlType > GetDiagnosticSession () noexcept;

Converts the given diagnostic session into the ShortName.

ara::core::Result< ara::core::StringView > GetDiagnosticSessionShort Name (SessionControlType session) noexcept;

Method to reset the current session to default session.

ara::core::Result< void > ResetToDefaultSession () noexcept;

Register a notifier function which is called if the activity is changed. A consecutive call of this method will overwrite the previous registered notifier.

ara::core::Result< void > SetActivityNotifier (ActivityStatusType Notifier notifier) noexcept;

Register a notifier function which is called if the Session is changed. A consecutive call of this method will overwrite the previous registered notifier.

ara::core::Result< void > SetDiagnosticSessionNotifier (SessionControl TypeNotifier notifier) noexcept;

Register a notifier function which is called if the SecurityLevel is changed. A consecutive call of this method will overwrite the previous registered notifier.

ara::core::Result< void > SetSecurityLevelNotifier (SecurityLevelType Notifier notifier) noexcept;

Operators

operator= function 2

Copy assignment operator of conversation is deleted.

Overloads = 2
Conversation & operator= (const Conversation &)=delete; SWS_DM_02091
Conversation & operator= (Conversation &&)=delete; SWS_DM_02093

Type aliases

Register a notifier function which is called if the activity is changed.

using ActivityStatusTypeNotifier = std::function<void(ActivityStatus Type)>;

Register a notifier function which is called if the SecurityLevel is changed.

using SecurityLevelTypeNotifier = std::function<void(SecurityLevel Type)>;

Register a notifier function which is called if the Session is changed.

using SessionControlTypeNotifier = std::function<void(SessionControl Type)>;

Embedded types

Method documentation

function Conversation [SWS_DM_02090] Upstream: RS_AP_00134

Conversation (const Conversation &)=delete;

Copy constructor of conversation is deleted.

Header-Datei#include "ara/diag/conversation.h"
Scopeclass ara::diag::Conversation

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

Record
AUTOSAR/AP/record/SWS_DM_02090
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02090@rel:R25-11#4794c95c
Content hash
4794c95c
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02090
Status: valid/unmigrated Version: rel:R25-11#4794c95c Versionshistorie & Revisions (1 transition)
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_02090@rel:R25-11#4794c95c
Point-in-Time History:
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 Conversation [SWS_DM_02092] Upstream: RS_AP_00134

Conversation (Conversation &&)=delete;

Move constructor of conversation is deleted.

Header-Datei#include "ara/diag/conversation.h"
Scopeclass ara::diag::Conversation

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

Record
AUTOSAR/AP/record/SWS_DM_02092
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02092@rel:R25-11#c1133833
Content hash
c1133833
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02092
Status: valid/unmigrated Version: rel:R25-11#c1133833 Versionshistorie & Revisions (1 transition)
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_02092@rel:R25-11#c1133833
Point-in-Time History:
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 GetActivityStatus [SWS_DM_00694] Upstream: RS_AP_00139, RS_Diag_04169

ara::core::Result< ActivityStatusType > GetActivityStatus () noexcept;

Represents the status of an active conversation.

Header-Datei#include "ara/diag/conversation.h"
Scopeclass ara::diag::Conversation
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
ara::core::Result<ActivityStatusType >the activity status of the conversation

Fehler

FehlercodeBeschreibung
DiagErrc::kServiceNotAvailablerollback_semantics The call cannot be executed, because essential DM functionality is currently not available.

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

Record
AUTOSAR/AP/record/SWS_DM_00694
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00694@rel:R25-11#2a044ec1
Content hash
2a044ec1
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00694
Status: valid/unmigrated Version: rel:R25-11#ed7817d4 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_00694@rel:R25-11#ed7817d4
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#2a044ec12026-09-30
  • R19-11rel:R19-11#5bb1402e2026-10-14
  • R20-11rel:R20-11#572f5ddc2026-10-14
  • R21-11rel:R21-11#572f5ddc2026-10-14
  • R22-11rel:R22-11#bd60d8fa2026-10-14
  • R23-11rel:R23-11#46b965a92026-10-14
  • R24-11rel:R24-11#3d1f91b12026-10-14
  • R25-11rel:R25-11#ed7817d42026-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 GetAllConversations [SWS_DM_00782] Upstream: RS_Diag_04166, RS_Diag_04169, RS_Diag_04209

static ara::core::Vector< std::reference_wrapper< Conversation > > Get AllConversations () noexcept;

Get all possible conversations.

Header-Datei#include "ara/diag/conversation.h"
Scopeclass ara::diag::Conversation
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
ara::core::Vector<std::reference_wrapper<Conversation > >A Vector of all possible Conversation objects

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

Record
AUTOSAR/AP/record/SWS_DM_00782
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00782@rel:R25-11#d2c5059b
Content hash
d2c5059b
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00782
Status: valid/unmigrated Version: rel:R25-11#d611d124 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_00782@rel:R25-11#d611d124
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#d2c5059b2026-09-30
  • R19-11rel:R19-11#5b89e7fd2026-10-14
  • R20-11rel:R20-11#a48e4d862026-10-14
  • R21-11rel:R21-11#657f3de32026-10-14
  • R22-11rel:R22-11#fde570342026-10-14
  • R23-11rel:R23-11#3933ca7f2026-10-14
  • R24-11rel:R24-11#afddc99e2026-10-14
  • R25-11rel:R25-11#d611d1242026-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 GetConversation [SWS_DM_00692] Upstream: RS_AP_00139, RS_Diag_04169, RS_Diag_04170

static ara::core::Result< Conversation & > GetConversation (const Meta Info &metaInfo) noexcept;

Get one conversation based on given MetaInfo.

Header-Datei#include "ara/diag/conversation.h"
Scopeclass ara::diag::Conversation
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
metaInfoMetaInfo of the request.

Rückgabewert

TypBeschreibung
ara::core::Result<Conversation & >Conversation object or error

Fehler

FehlercodeBeschreibung
DiagErrc::kServiceNotAvailablerollback_semantics The call cannot be executed, because essential DM functionality is currently not available.

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

Record
AUTOSAR/AP/record/SWS_DM_00692
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00692@rel:R25-11#43561499
Content hash
43561499
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00692
Status: valid/unmigrated Version: rel:R25-11#56f84ccd 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_00692@rel:R25-11#56f84ccd
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#435614992026-09-30
  • R19-11rel:R19-11#842bac5e2026-10-14
  • R20-11rel:R20-11#c12542fc2026-10-14
  • R21-11rel:R21-11#b2bba1dd2026-10-14
  • R22-11rel:R22-11#069f33cc2026-10-14
  • R23-11rel:R23-11#36f823122026-10-14
  • R24-11rel:R24-11#02c9dc132026-10-14
  • R25-11rel:R25-11#56f84ccd2026-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 GetConversationIdentifier [SWS_DM_00700] Upstream: RS_AP_00139, RS_Diag_04169

ara::core::Result< ConversationIdentifierType > GetConversation Identifier () noexcept;

Getter for the current identification properties of the active conversation.

Header-Datei#include "ara/diag/conversation.h"
Scopeclass ara::diag::Conversation
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
ara::core::Result<ConversationIdentifierType >Returns the conversation information

Fehler

FehlercodeBeschreibung
DiagErrc::kServiceNotAvailablerollback_semantics The call cannot be executed, because essential DM functionality is currently not available.

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

Record
AUTOSAR/AP/record/SWS_DM_00700
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00700@rel:R25-11#12611884
Content hash
12611884
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00700
Status: valid/unmigrated Version: rel:R25-11#4e415079 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_00700@rel:R25-11#4e415079
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#126118842026-09-30
  • R19-11rel:R19-11#b95f93e22026-10-14
  • R20-11rel:R20-11#67ff974f2026-10-14
  • R21-11rel:R21-11#67ff974f2026-10-14
  • R22-11rel:R22-11#46ec30932026-10-14
  • R23-11rel:R23-11#1ae0af2f2026-10-14
  • R24-11rel:R24-11#2e3acc272026-10-14
  • R25-11rel:R25-11#4e4150792026-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 GetCurrentActiveConversations [SWS_DM_00783] Upstream: RS_Diag_04166, RS_Diag_04169, RS_Diag_04209

static ara::core::Vector< std::reference_wrapper< Conversation > > Get CurrentActiveConversations () noexcept;

Get all currently active conversations.

Header-Datei#include "ara/diag/conversation.h"
Scopeclass ara::diag::Conversation
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
ara::core::Vector<std::reference_wrapper<Conversation > >A Vector of all currently active (GetActivityStatus() == kActive) Conversation objects.

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

Record
AUTOSAR/AP/record/SWS_DM_00783
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00783@rel:R25-11#f90567b8
Content hash
f90567b8
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00783
Status: valid/unmigrated Version: rel:R25-11#0836aea7 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_00783@rel:R25-11#0836aea7
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#f90567b82026-09-30
  • R19-11rel:R19-11#f673e9752026-10-14
  • R20-11rel:R20-11#50e9815d2026-10-14
  • R21-11rel:R21-11#2b04ffb12026-10-14
  • R22-11rel:R22-11#297e1edb2026-10-14
  • R23-11rel:R23-11#f13cae9f2026-10-14
  • R24-11rel:R24-11#4274a6302026-10-14
  • R25-11rel:R25-11#0836aea72026-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 GetDiagnosticSecurityLevel [SWS_DM_00698] Upstream: RS_AP_00139, RS_Diag_04169, RS_Diag_04208

ara::core::Result< SecurityLevelType > GetDiagnosticSecurityLevel () noexcept;

Represents the current active diagnostic SecurityLevel of an active conversation.

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

use

Method GetDiagnosticSecurityLevel of class ara::diag::Conversation serves to synchronously determine the currently active security level of a diagnostic conversation (AUTOSAR_AP_SWS_Diagnostics §8.9.3.2.2.6 “GetDiagnosticSecurityLevel”, [SWS_DM_00698]). It is provided via header #include "ara/diag/conversation.h", takes no parameters, and is declared with the specifier noexcept.

As its return type, the function returns a ara::core::Result<SecurityLevelType>. In the case of success, this object directly contains the enum value of the current security state of the active connection [SWS_DM_00698].

Error Handling and Concurrency

If the query fails, the method returns a ara::core::Result with error code DiagErrc::kServiceNotAvailable [SWS_DM_00698]. This indicates, applying rollback semantics, that essential functions of Diagnostic Management (DM) are not available at the time of the call. Regarding execution safety, GetDiagnosticSecurityLevel is classified as thread-safe and exception-safe [SWS_DM_00698], thus permitting concurrent calls from different threads.

Interaction

Interpretation: A call is typically likely to occur before executing protected diagnostic activities to verify the presence of the required authorization level. Question Q-8c056d4c5199524d (open) For further processing or diagnostic output, the determined SecurityLevelType can be translated into the associated symbolic short name (shortName as ara::core::StringView) via method GetDiagnosticSecurityLevelShortName (AUTOSAR_AP_SWS_Diagnostics §8.9.3.2.2.7 “GetDiagnosticSecurityLevelShortName”, [SWS_DM_00708]).

This usage note was generated automatically based on the AUTOSAR Adaptive R25-11 specification.

Implementer's Guide to follow (complexity I2)

Header-Datei#include "ara/diag/conversation.h"
Scopeclass ara::diag::Conversation
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
ara::core::Result<SecurityLevelType >Returns the current SecurityLevel

Fehler

FehlercodeBeschreibung
DiagErrc::kServiceNotAvailablerollback_semantics The call cannot be executed, because essential DM functionality is currently not available.

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

Record
AUTOSAR/AP/record/SWS_DM_00698
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00698@rel:R25-11#628e5fed
Content hash
628e5fed
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00698
Status: valid/unmigrated Version: rel:R25-11#f7a1e8de 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_00698@rel:R25-11#f7a1e8de
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#628e5fed2026-09-30
  • R19-11rel:R19-11#9fed8b1c2026-10-14
  • R20-11rel:R20-11#c70e66042026-10-14
  • R21-11rel:R21-11#3fddfcd12026-10-14
  • R22-11rel:R22-11#fb7b24702026-10-14
  • R23-11rel:R23-11#d0084dcd2026-10-14
  • R24-11rel:R24-11#1251fd382026-10-14
  • R25-11rel:R25-11#f7a1e8de2026-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 GetDiagnosticSecurityLevelShortName [SWS_DM_00708] Upstream: RS_Diag_04169, RS_Diag_04208

ara::core::Result< ara::core::StringView > GetDiagnosticSecurityLevel ShortName (SecurityLevelType securityLevel) noexcept;

Converts the given diagnostic SecurityLevel into the ShortName.

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

use

The synchronous method ara::diag::Conversation::GetDiagnosticSecurityLevelShortName from header ara/diag/conversation.h resolves a passed security level of type SecurityLevelType into the identifier of the configured short name (DiagnosticSecurityLevel.shortName) [SWS_DM_00708]. The call returns the result as ara::core::Result<ara::core::StringView>.

Error handling

In the error case, the function returns error code DiagErrc::kInvalidArgument [SWS_DM_00708]. The Diagnostic Server instance validates the parameter value based on two conditions:

  • If the locked state kLocked is passed as argument securityLevel, the Diagnostic Server must return kInvalidArgument [SWS_DM_01259].
  • If the passed value does not correspond to any configured entry after the calculation ((DiagnosticSecurityAccess.requestSeedId + 1) / 2) in DiagnosticContributionSet, the call likewise fails with kInvalidArgument [SWS_DM_01260].

Concurrency and Limitations

The method is declared as noexcept and specified as exception-safe (exception safe) and thread-safe (thread-safe) [SWS_DM_00708]. Due to the specified thread safety, the call is likely to be safe even during concurrent diagnostic activities without application-side mutex synchronization. Question Q-b851a473c2d836b7 (open) Before accessing the referenced string, the application must check whether the ara::core::Result contains an error.

This usage note was generated automatically. All references originate from the specifications of the AUTOSAR Adaptive Platform for release R25-11.

Implementer's Guide to follow (complexity I2)

Header-Datei#include "ara/diag/conversation.h"
Scopeclass ara::diag::Conversation
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
securityLevelSecurity level enum the shortname shall be returned for.

Rückgabewert

TypBeschreibung
ara::core::Result<ara::core::StringView >ara::core::Result<ara::core::StringView> the SecurityLevel as shortName; DiagnosticSecurityLevel.shortName.

Fehler

FehlercodeBeschreibung
DiagErrc::kInvalidArgumentrollback_semantics e.g. kPreFailed with internal debouncing

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

Record
AUTOSAR/AP/record/SWS_DM_00708
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00708@rel:R25-11#ad3cc17f
Content hash
ad3cc17f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00708
Status: valid/unmigrated Version: rel:R25-11#3e07bb5e Versionshistorie & Revisions (1 transition, 7 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_00708@rel:R25-11#3e07bb5e
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#ad3cc17f2026-09-30
  • R20-11rel:R20-11#b852d3862026-10-14
  • R21-11rel:R21-11#618fb0662026-10-14
  • R22-11rel:R22-11#4879f23d2026-10-14
  • R23-11rel:R23-11#488bb9ba2026-10-14
  • R24-11rel:R24-11#bce583e52026-10-14
  • R25-11rel:R25-11#3e07bb5e2026-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 GetDiagnosticSession [SWS_DM_00696] Upstream: RS_AP_00139, RS_Diag_04169, RS_Diag_04208

ara::core::Result< SessionControlType > GetDiagnosticSession () noexcept;

Represents the current active diagnostic session of an active conversation.

Header-Datei#include "ara/diag/conversation.h"
Scopeclass ara::diag::Conversation
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
ara::core::Result<SessionControlType >the current session

Fehler

FehlercodeBeschreibung
DiagErrc::kServiceNotAvailablerollback_semantics The call cannot be executed, because essential DM functionality is currently not available.

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

Record
AUTOSAR/AP/record/SWS_DM_00696
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00696@rel:R25-11#d12e41e9
Content hash
d12e41e9
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00696
Status: valid/unmigrated Version: rel:R25-11#43ed0f51 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_00696@rel:R25-11#43ed0f51
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#d12e41e92026-09-30
  • R19-11rel:R19-11#0f787e1f2026-10-14
  • R20-11rel:R20-11#4ee06c722026-10-14
  • R21-11rel:R21-11#980ebaf22026-10-14
  • R22-11rel:R22-11#5a23cab62026-10-14
  • R23-11rel:R23-11#e3c9e4282026-10-14
  • R24-11rel:R24-11#043ec2502026-10-14
  • R25-11rel:R25-11#43ed0f512026-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 GetDiagnosticSessionShortName [SWS_DM_00707] Upstream: RS_Diag_04169, RS_Diag_04208

ara::core::Result< ara::core::StringView > GetDiagnosticSessionShort Name (SessionControlType session) noexcept;

Converts the given diagnostic session into the ShortName.

Header-Datei#include "ara/diag/conversation.h"
Scopeclass ara::diag::Conversation
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
sessionDiagnostic session the shortname shall be returned for.

Rückgabewert

TypBeschreibung
ara::core::Result<ara::core::StringView >ara::core::Result<ara::core::StringView> the session as shortName; DiagnosticSession.shortName.

Fehler

FehlercodeBeschreibung
DiagErrc::kInvalidArgumentrollback_semantics e.g. kPreFailed with internal debouncing

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

Record
AUTOSAR/AP/record/SWS_DM_00707
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00707@rel:R25-11#38252026
Content hash
38252026
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00707
Status: valid/unmigrated Version: rel:R25-11#ec692072 Versionshistorie & Revisions (1 transition, 7 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_00707@rel:R25-11#ec692072
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#382520262026-09-30
  • R20-11rel:R20-11#8e2625812026-10-14
  • R21-11rel:R21-11#633a4a682026-10-14
  • R22-11rel:R22-11#8d9fdc682026-10-14
  • R23-11rel:R23-11#68d2b3682026-10-14
  • R24-11rel:R24-11#687ae1a02026-10-14
  • R25-11rel:R25-11#ec6920722026-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 ResetToDefaultSession [SWS_DM_00701] Upstream: RS_Diag_04006, RS_Diag_04166, RS_Diag_04169, RS_Diag_04209

ara::core::Result< void > ResetToDefaultSession () noexcept;

Method to reset the current session to default session.

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

The method ara::diag::Conversation::ResetToDefaultSession enables an Adaptive Application to explicitly reset a diagnostic conversation to the default session (Default Session) [SWS_DM_00701].

use

The call is performed without parameters on an instance of ara::diag::Conversation via the header file #include "ara/diag/conversation.h" [SWS_DM_00701]. When the method is called, the Diagnostic Server instance first completes the running request and only then switches the diagnostic session of the conversation to the Default Session [SWS_DM_00842].

Error Handling and Concurrency

  • Return value and errors: The function returns a ara::core::Result<void> [SWS_DM_00701]. No standardized error codes are specified; interpretation: any errors in the Result are likely to reflect vendor-specific problems during job processing by the Diagnostic Server. Question Q-9f780f4ef7991bf4 (open)
  • Thread safety: The function is exception-safe (noexcept), but specified as not thread-safe (not thread-safe) [SWS_DM_00701]. Concurrent calls on the same conversation object must therefore be coordinated by the calling application.

Interaction

The method supplements the informative nature of the conversation interface with targeted state control AUTOSAR_AP_SWS_Diagnostics §7 “Diagnostic Conversation Interface”. It ensures that existing diagnostic requests are terminated in an orderly manner before the state of the conversation is modified [SWS_DM_00842].

This usage note was generated automatically and is based exclusively on the specification documents of AUTOSAR Adaptive R25-11.

Implementer's Guide to follow (complexity I2)

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

Rückgabewert

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

Fehler

FehlercodeBeschreibung
This function does not specify any standardized errors.

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

Record
AUTOSAR/AP/record/SWS_DM_00701
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00701@rel:R25-11#54ef57a9
Content hash
54ef57a9
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00701
Status: valid/unmigrated Version: rel:R25-11#c03208e0 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_00701@rel:R25-11#c03208e0
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#54ef57a92026-09-30
  • R19-11rel:R19-11#cba5e6552026-10-14
  • R20-11rel:R20-11#576381052026-10-14
  • R21-11rel:R21-11#576381052026-10-14
  • R22-11rel:R22-11#3b3097d22026-10-14
  • R23-11rel:R23-11#945d0ca32026-10-14
  • R24-11rel:R24-11#5966beb72026-10-14
  • R25-11rel:R25-11#c03208e02026-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 SetActivityNotifier [SWS_DM_00695] Upstream: RS_AP_00139, RS_Diag_04169

ara::core::Result< void > SetActivityNotifier (ActivityStatusType Notifier notifier) noexcept;

Register a notifier function which is called if the activity is changed. A consecutive call of this method will overwrite the previous registered notifier.

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

use

The method ara::diag::Conversation::SetActivityNotifier serves to register a notification function (notifier) that is called whenever the activity status of the diagnostic conversation changes [SWS_DM_00695]. The declaration is made via header file #include "ara/diag/conversation.h" in the scope of class ara::diag::Conversation AUTOSAR_AP_SWS_Diagnostics §8.9.3.2.2.11 “SetActivityNotifier”. A new or consecutive call on the same instance completely overwrites the previously registered notifier [SWS_DM_00695], [SWS_DM_01355].

Error Handling and Concurrency

The return value is typed as ara::core::Result<void> and reports success or an error state; however, the interface specifies no standardized error codes [SWS_DM_00695]. The method is declared as noexcept and exception-safe (exception safe).

With regard to thread safety, the function is classified as not thread-safe (not thread-safe) [SWS_DM_00695]. If access to the same conversation instance occurs from multiple threads, the registration call must be synchronized on the application side.

Interaction in the lifecycle

Instances of the conversation are provided by the Diagnostic Server, where the maximum number of parallel conversations is configured via maxConversations [SWS_DM_00840]. When the lifecycle of a diagnostic conversation ends, the Diagnostic Server sets the activity status to kInactive [SWS_DM_00843]. This is likely intended to signal the end of active diagnostic communication to the registered notifier. Question Q-93c30267eb100ed7 (open)

This text was generated by an AI system and editorially reviewed.

Implementer's Guide to follow (complexity I2)

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

Parameter (in)

ParameterBeschreibung
notifiernotifier function to be called

Rückgabewert

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

Fehler

FehlercodeBeschreibung
This function does not specify any standardized errors.

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

Record
AUTOSAR/AP/record/SWS_DM_00695
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00695@rel:R25-11#5eecbfa0
Content hash
5eecbfa0
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00695
Status: valid/unmigrated Version: rel:R25-11#1015a6c7 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_00695@rel:R25-11#1015a6c7
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#5eecbfa02026-09-30
  • R19-11rel:R19-11#c2cf431a2026-10-14
  • R20-11rel:R20-11#6973db082026-10-14
  • R21-11rel:R21-11#483f11df2026-10-14
  • R22-11rel:R22-11#dafc31d62026-10-14
  • R23-11rel:R23-11#996aadb12026-10-14
  • R24-11rel:R24-11#8248ea3f2026-10-14
  • R25-11rel:R25-11#1015a6c72026-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 SetDiagnosticSessionNotifier [SWS_DM_00697] Upstream: RS_AP_00139, RS_Diag_04169, RS_Diag_04208

ara::core::Result< void > SetDiagnosticSessionNotifier (SessionControl TypeNotifier notifier) noexcept;

Register a notifier function which is called if the Session is changed. A consecutive call of this method will overwrite the previous registered notifier.

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

The function SetDiagnosticSessionNotifier belongs to class ara::diag::Conversation and is provided via the header file #include "ara/diag/conversation.h" [SWS_DM_00697]. It enables applications to register a notifier function that is triggered on every change of the diagnostic session.

Usage and invocation semantics

The call is performed synchronously on an instance of ara::diag::Conversation, passing the parameter notifier of type SessionControl TypeNotifier [SWS_DM_00697]. A subsequent or repeated method call completely overwrites the previously registered notifier AUTOSAR_AP_SWS_Diagnostics §8.9.3.2.2.12 “SetDiagnosticSessionNotifier”.

Return value and error handling

As return value, the interface returns a ara::core::Result<void>, which either confirms a successful registration or contains an error object [SWS_DM_00697]. The specification does not define any standardized error codes for this call; occurring errors are therefore likely attributable to implementation-specific validations. Question Q-1ac7eebee90e3c22 (open)

Concurrency and Limitations

This usage note was generated automatically. It is based exclusively on the specification documents of AUTOSAR Adaptive Release R25-11.

Implementer's Guide to follow (complexity I1)

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

Parameter (in)

ParameterBeschreibung
notifiernotifier function to be called

Rückgabewert

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

Fehler

FehlercodeBeschreibung
This function does not specify any standardized errors.

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

Record
AUTOSAR/AP/record/SWS_DM_00697
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00697@rel:R25-11#4962fbb2
Content hash
4962fbb2
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00697
Status: valid/unmigrated Version: rel:R25-11#07e4c466 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_00697@rel:R25-11#07e4c466
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#4962fbb22026-09-30
  • R19-11rel:R19-11#0f2677902026-10-14
  • R20-11rel:R20-11#aef2058a2026-10-14
  • R21-11rel:R21-11#aef2058a2026-10-14
  • R22-11rel:R22-11#b2727dc92026-10-14
  • R23-11rel:R23-11#91ac768a2026-10-14
  • R24-11rel:R24-11#22154ba92026-10-14
  • R25-11rel:R25-11#07e4c4662026-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 SetSecurityLevelNotifier [SWS_DM_00699] Upstream: RS_AP_00139, RS_Diag_04169, RS_Diag_04208

ara::core::Result< void > SetSecurityLevelNotifier (SecurityLevelType Notifier notifier) noexcept;

Register a notifier function which is called if the SecurityLevel is changed. A consecutive call of this method will overwrite the previous registered notifier.

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

use

The method ara::diag::Conversation::SetSecurityLevelNotifier serves to register a callback function that is notified as soon as the security level (SecurityLevel) of the diagnostic conversation changes [SWS_DM_00699]. It is declared via the header ara/diag/conversation.h AUTOSAR_AP_SWS_Diagnostics §8.9.3.2.2.13 “SetSecurityLevelNotifier”. It accepts the function to be called notifier as parameter. Calling the method again completely overwrites a previously registered notifier function [SWS_DM_00699].

Semantics and return value

The function is defined as noexcept and specified as exception-safe (exception safe) [SWS_DM_00699]. As return type, it returns ara::core::Result<void>, which returns either no value or an error that occurred [SWS_DM_00699].

Error handling

The specification defines no standardized error codes for SetSecurityLevelNotifier [SWS_DM_00699]. Any errors returned in the ara::core::Result are therefore likely vendor-specific or caused by the underlying platform runtime. Question Q-c8dd53e9d661cc78 (open)

Concurrency and Limitations

Regarding thread safety, the method is explicitly classified as not thread-safe [SWS_DM_00699]. Concurrent accesses to the same instance of ara::diag::Conversation must thus be synchronized by the caller. In addition, the API definition has the status DRAFT in the present documentation version AUTOSAR_AP_SWS_Diagnostics §8.9.3.2.2.13 “SetSecurityLevelNotifier”.

This usage note is based on the specification AUTOSAR Adaptive Platform Release R25-11.

Implementer's Guide to follow (complexity I2)

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

Parameter (in)

ParameterBeschreibung
notifiernotifier function to be called

Rückgabewert

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

Fehler

FehlercodeBeschreibung
This function does not specify any standardized errors.

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

Record
AUTOSAR/AP/record/SWS_DM_00699
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00699@rel:R25-11#bd832bbe
Content hash
bd832bbe
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00699
Status: valid/unmigrated Version: rel:R25-11#1a953b3c 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_00699@rel:R25-11#1a953b3c
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#bd832bbe2026-09-30
  • R19-11rel:R19-11#955a893e2026-10-14
  • R20-11rel:R20-11#e175a4872026-10-14
  • R21-11rel:R21-11#965f1c762026-10-14
  • R22-11rel:R22-11#377ba2182026-10-14
  • R23-11rel:R23-11#a5a017ec2026-10-14
  • R24-11rel:R24-11#a280e19e2026-10-14
  • R25-11rel:R25-11#1a953b3c2026-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_02091] Upstream: RS_AP_00134

Conversation & operator= (const Conversation &)=delete;

Copy assignment operator of conversation is deleted.

Header-Datei#include "ara/diag/conversation.h"
Scopeclass ara::diag::Conversation

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

Record
AUTOSAR/AP/record/SWS_DM_02091
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02091@rel:R25-11#c1fa5c07
Content hash
c1fa5c07
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02091
Status: valid/unmigrated Version: rel:R25-11#c1fa5c07 Versionshistorie & Revisions (1 transition)
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_02091@rel:R25-11#c1fa5c07
Point-in-Time History:
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_02093] Upstream: RS_AP_00134

Conversation & operator= (Conversation &&)=delete;

Move assignment operator of conversation is deleted.

Header-Datei#include "ara/diag/conversation.h"
Scopeclass ara::diag::Conversation

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

Record
AUTOSAR/AP/record/SWS_DM_02093
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02093@rel:R25-11#917ef331
Content hash
917ef331
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02093
Status: valid/unmigrated Version: rel:R25-11#917ef331 Versionshistorie & Revisions (1 transition)
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_02093@rel:R25-11#917ef331
Point-in-Time History:
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

Type alias documentation

type alias ActivityStatusTypeNotifier [SWS_DM_02126] Upstream: RS_AP_00139, RS_Diag_04169

using ActivityStatusTypeNotifier = std::function<void(ActivityStatus Type)>;

Register a notifier function which is called if the activity is changed.

Header-Datei#include "ara/diag/conversation.h"
Scopeclass ara::diag::Conversation
SymbolActivityStatusTypeNotifier
Thread-Sicherheitnot thread-safe

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

Record
AUTOSAR/AP/record/SWS_DM_02126
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02126@rel:R25-11#9d0d103a
Content hash
9d0d103a
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02126
Status: valid/unmigrated Version: rel:R25-11#9d0d103a Versionshistorie & Revisions (1 transition)
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_02126@rel:R25-11#9d0d103a
Point-in-Time History:
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

type alias SecurityLevelTypeNotifier [SWS_DM_02128] Upstream: RS_AP_00139, RS_Diag_04169, RS_Diag_04208

using SecurityLevelTypeNotifier = std::function<void(SecurityLevel Type)>;

Register a notifier function which is called if the SecurityLevel is changed.

Header-Datei#include "ara/diag/conversation.h"
Scopeclass ara::diag::Conversation
SymbolSecurityLevelTypeNotifier
Thread-Sicherheitnot thread-safe

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

Record
AUTOSAR/AP/record/SWS_DM_02128
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02128@rel:R25-11#bf178d8f
Content hash
bf178d8f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02128
Status: valid/unmigrated Version: rel:R25-11#bf178d8f Versionshistorie & Revisions (1 transition)
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_02128@rel:R25-11#bf178d8f
Point-in-Time History:
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

type alias SessionControlTypeNotifier [SWS_DM_02127] Upstream: RS_AP_00139, RS_Diag_04169, RS_Diag_04208

using SessionControlTypeNotifier = std::function<void(SessionControl Type)>;

Register a notifier function which is called if the Session is changed.

Header-Datei#include "ara/diag/conversation.h"
Scopeclass ara::diag::Conversation
SymbolSessionControlTypeNotifier
Thread-Sicherheitnot thread-safe

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

Record
AUTOSAR/AP/record/SWS_DM_02127
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02127@rel:R25-11#09cac05a
Content hash
09cac05a
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02127
Status: valid/unmigrated Version: rel:R25-11#09cac05a Versionshistorie & Revisions (1 transition)
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_02127@rel:R25-11#09cac05a
Point-in-Time History:
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