DEENESPTFRRUARHIKOZHNL

class ara::diag::Event

[SWS_DM_00646] Upstream: RS_Diag_04151

class Event final {...};

Class to implement operations on diagnostic Events.

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

User GuideAI-GENERATED

Enables applications to perform status-related monitoring, debouncing, and DTC querying of diagnostic events.
AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 2f3253efefb6 Provenance Open questions (2)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

Enables applications to perform status-related monitoring, debouncing, and DTC querying of diagnostic events.

In AUTOSAR Adaptive, the class ara::diag::Event provides operations for monitoring diagnostic events and their debouncing and error status. Applications instantiate the object via an InstanceSpecifier, register optional change notifications, and retrieve diagnostic and DTC information asynchronously [SWS_DM_00647]. As a central constraint, the instance is neither copyable nor movable, and due to a lack of thread safety, most query methods require application-side synchronization during concurrent access [SWS_DM_00649].

Context

The class ara::diag::Event serves as the primary interface for interacting with diagnostic events in the AUTOSAR Adaptive Platform. It acts as a link between application-specific software and central diagnostic management. Applications use this interface to monitor the current diagnostic and debouncing status of an event or to be notified of status changes.

In the system context, essentially three parties are involved in the interaction:

  • Application software: Instantiates the class, initiates status queries, and receives asynchronous status updates.
  • ara::diag::Event: Encapsulates the typed diagnostic port (PortPrototype of a DiagnosticEventInterface) and provides cross-thread and cross-process query methods.
  • Diagnostic Management (DM): Executes error detection, DTC mappings, and debouncing behavior on the server side.
app Anwendungssoftware event ara::diag::Event app->event Statusabfrage / Notifier dm Diagnostic Management event->dm Ereignisdaten / Notifikationen

Context diagram: Placement of the Event class between application software and Diagnostic Management. Sources: [SWS_DM_00647], [SWS_DM_00653]

Lifecycle

Instantiation is performed explicitly by passing an ara::core::InstanceSpecifier [SWS_DM_00647]. The identifier must refer to a PortPrototype typed via an DiagnosticEventInterface. The constructor is exception-safe and thread-safe [SWS_DM_00647].

With regard to ownership, ara::diag::Event is defined as a non-copyable and non-movable single instance: both the copy constructor [SWS_DM_01681] and the move constructor [SWS_DM_01682] as well as the associated assignment operators ([SWS_DM_01679], [SWS_DM_01680]) are explicitly deleted (=delete). An InstanceSpecifier must not be instantiated multiple times per process [SWS_DM_00647].

Destruction takes place via the destructor ~Event() [SWS_DM_00648]. Unlike the constructor, the destructor is not thread-safe. The remaining member functions (with the exception of GetDTCNumber) are also specified as not thread-safe, which is why concurrent calls on the same instance must be synchronized on the application side. In Release R25-11, the terminology in this regard was harmonized from reentrancy to concurrency AUTOSAR_AP_SWS_Diagnostics §1 “Change History”.

Usage Path

A typical use case is divided into the following calls:

  1. Initialization: The application creates the instance via its InstanceSpecifier [SWS_DM_00647]. The binding is expected to establish the connection to the diagnostic daemon at initialization time. Question Q-78e4462a0d147cfb (open)
  2. Registering notifier: For monitoring purposes, a callback is optionally registered via SetEventStatusChangedNotifier [SWS_DM_00650]. A subsequent call overwrites the previously set notifier.
  3. State queries: During operation, the application queries diagnostic data asynchronously via ara::core::Future:
    • GetEventStatus() determines the current status byte [SWS_DM_00649].
    • GetDebouncingStatus() returns the current debouncing state [SWS_DM_00654].
    • GetFaultDetectionCounter() retrieves the fault detection counter (FDC) [SWS_DM_00656].
    • GetTestComplete() checks whether the test has completed (FDC reaches -128 or 127) [SWS_DM_00655].
    • GetDTCNumber(dtcFormat) provides the associated DTC number in the selected format and is designed to be thread-safe [SWS_DM_00653].
Typical sequence of a diagnostic event interactionApplicationara::diag::EventDiagnostic ManagementEvent(specifier)Verbindung registrierenSetEventStatusChangedNotifier(notifier)Result<void>GetEventStatus()Ereignisstatus anfordernEventStatusByteFuture<EventStatusByte>optEvent status changesStatusaktualisierungnotifier(EventStatusByte)

Sequence diagram: Typical interaction sequence between application, event instance, and Diagnostic Management. Sources: [SWS_DM_00647], [SWS_DM_00650], [SWS_DM_00649], [SWS_DM_00653]

Error Scenarios

Error conditions occur in the form of modeling violations upon instantiation or as error codes at runtime:

  • Violations during constructor invocation [SWS_DM_00647]:
    • InstanceSpecifierMappingIntegrityViolation: The identifier cannot be resolved in the model or does not reference a PortPrototype.
    • PortInterfaceMappingViolation: The referenced PortPrototype is not typed as DiagnosticEventInterface.
    • ProcessMappingViolation: No modeled context matching the process was found.
    • InstanceSpecifierAlreadyInUseViolation: The identifier is already used by an active instance in the same process.
  • Runtime error codes via ara::core::Result or ara::core::Future:

This guide is based on the specifications of the AUTOSAR Adaptive Platform in Release R25-11.

Member map

Class diagram

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

G nara__diag__Event255 Event + Event() + operator=() + ~Event() + GetDTCNumber() + GetDebouncingStatus() + GetEventStatus() + GetFaultDetectionCounter() + GetTestComplete() + SetEventStatusChangedNotifier()

Detail view

Select an entry in the outline.

Constructors and destructor

Event function 3

Constructor Event class.

Overloads Event 3
explicit Event (const ara::core::InstanceSpecifier &specifier) noexcept; SWS_DM_00647
Event (Event &)=delete; SWS_DM_01681
Event (Event &&) noexcept=delete; SWS_DM_01682
~Event function

Destructor of class Event.

~Event () noexcept;

Methods

Get the current debouncing status.

ara::core::Future< DebouncingState > GetDebouncingStatus () noexcept;
GetDTCNumber function

Returns the DTC number related to this event instance.

ara::core::Future< std::uint32_t > GetDTCNumber (DTCFormatType dtc Format) noexcept;

Returns the current diagnostic event status.

ara::core::Future< EventStatusByte > GetEventStatus () noexcept;

Returns the current value of the Fault Detection Counter (FDC) of this event.

ara::core::Future< std::int8_t > GetFaultDetectionCounter () noexcept;

Get the status if the event has matured to test completed (corresponds to FDC = -128 or FDC = 127).

ara::core::Future< bool > GetTestComplete () noexcept;

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

ara::core::Result< void > SetEventStatusChangedNotifier (EventStatus ByteNotifier notifier) noexcept;

Operators

operator= function 2

Event shall be a single not assign-able instance.

Overloads = 2
Event & operator= (Event &)=delete; SWS_DM_01679
Event & operator= (Event &&)=delete; SWS_DM_01680

Method documentation

function Event [SWS_DM_00647] Upstream: RS_Diag_04151, RS_AP_00137, RS_AP_00170, RS_AP_00171, RS_AP_00172, RS_AP_00173

explicit Event (const ara::core::InstanceSpecifier &specifier) noexcept;

Constructor Event class.

Header-Datei#include "ara/diag/event.h"
Scopeclass ara::diag::Event
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 referenced by a pingViolation DiagnosticEventPortMapping needs to be typed by a DiagnosticEventInterface. 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 DiagnosticEventInterface.

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

Record
AUTOSAR/AP/record/SWS_DM_00647
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00647@rel:R25-11#f0666d8e
Content hash
f0666d8e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00647
Status: valid/unmigrated Version: rel:R25-11#5add1f87 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_00647@rel:R25-11#5add1f87
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#f0666d8e2026-09-30
  • R19-11rel:R19-11#3c89d7ee2026-10-14
  • R20-11rel:R20-11#870e61ce2026-10-14
  • R21-11rel:R21-11#f7c5ed1f2026-10-14
  • R22-11rel:R22-11#8c18fb3e2026-10-14
  • R23-11rel:R23-11#f694eb632026-10-14
  • R24-11rel:R24-11#51cd865b2026-10-14
  • R25-11rel:R25-11#5add1f872026-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 Event [SWS_DM_01681] Upstream: RS_AP_00147

Event (Event &)=delete;

Event shall be a single not copy-able instance.

Header-Datei#include "ara/diag/event.h"
Scopeclass ara::diag::Event

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

Record
AUTOSAR/AP/record/SWS_DM_01681
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01681@rel:R25-11#04d5b97d
Content hash
04d5b97d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01681
Status: valid/unmigrated Version: rel:R25-11#99c774ff 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_01681@rel:R25-11#99c774ff
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#04d5b97d2026-09-30
  • R23-11rel:R23-11#43b1f1382026-10-14
  • R24-11rel:R24-11#99c774ff2026-10-14
  • R25-11rel:R25-11#99c774ff2026-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 Event [SWS_DM_01682] Upstream: RS_AP_00147

Event (Event &&) noexcept=delete;

Move constructor of Event.

Header-Datei#include "ara/diag/event.h"
Scopeclass ara::diag::Event

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

Record
AUTOSAR/AP/record/SWS_DM_01682
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01682@rel:R25-11#8addd59c
Content hash
8addd59c
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01682
Status: valid/unmigrated Version: rel:R25-11#65729748 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_01682@rel:R25-11#65729748
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#8addd59c2026-09-30
  • R23-11rel:R23-11#30e0773c2026-10-14
  • R24-11rel:R24-11#657297482026-10-14
  • R25-11rel:R25-11#657297482026-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 GetDTCNumber [SWS_DM_00653] Upstream: RS_Diag_04201, RS_AP_00139, RS_AP_00119

ara::core::Future< std::uint32_t > GetDTCNumber (DTCFormatType dtc Format) noexcept;

Returns the DTC number related to this event instance.

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

Parameter (in)

ParameterBeschreibung
dtcFormatDefine the DTC format for the return value.

Rückgabewert

TypBeschreibung
ara::core::Future<std::uint32_t >Return the DTC number in respective DTC format.

Fehler

FehlercodeBeschreibung
DiagErrc::kNoSuchDTCrollback_semantics No mapped DTC exits for the requested event.
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_00653
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00653@rel:R25-11#c154a469
Content hash
c154a469
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00653
Status: valid/unmigrated Version: rel:R25-11#5e084285 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_00653@rel:R25-11#5e084285
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#c154a4692026-09-30
  • R19-11rel:R19-11#5dafafb22026-10-14
  • R20-11rel:R20-11#bf458cb22026-10-14
  • R21-11rel:R21-11#06484d962026-10-14
  • R22-11rel:R22-11#8f25efce2026-10-14
  • R23-11rel:R23-11#481fbbe32026-10-14
  • R24-11rel:R24-11#07fccb8e2026-10-14
  • R25-11rel:R25-11#5e0842852026-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 GetDebouncingStatus [SWS_DM_00654] Upstream: RS_Diag_04068, RS_Diag_04225, RS_AP_00139

ara::core::Future< DebouncingState > GetDebouncingStatus () noexcept;

Get the current debouncing status.

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

Rückgabewert

TypBeschreibung
ara::core::Future<DebouncingState >Return the current debouncing state of this event.

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_00654
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00654@rel:R25-11#aa2d0fb8
Content hash
aa2d0fb8
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00654
Status: valid/unmigrated Version: rel:R25-11#8bddb1d0 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_00654@rel:R25-11#8bddb1d0
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#aa2d0fb82026-09-30
  • R19-11rel:R19-11#343c856a2026-10-14
  • R20-11rel:R20-11#76fa6fa62026-10-14
  • R21-11rel:R21-11#76fa6fa62026-10-14
  • R22-11rel:R22-11#b0bcfa5d2026-10-14
  • R23-11rel:R23-11#773a565b2026-10-14
  • R24-11rel:R24-11#58de85e42026-10-14
  • R25-11rel:R25-11#8bddb1d02026-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 GetEventStatus [SWS_DM_00649] Upstream: RS_Diag_04151, RS_AP_00139

ara::core::Future< EventStatusByte > GetEventStatus () noexcept;

Returns the current diagnostic event status.

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

Rückgabewert

TypBeschreibung
ara::core::Future< EventStatusByte >Return the current diagnostic event status

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_00649
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00649@rel:R25-11#73c9caf0
Content hash
73c9caf0
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00649
Status: valid/unmigrated Version: rel:R25-11#88b46805 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_00649@rel:R25-11#88b46805
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#73c9caf02026-09-30
  • R19-11rel:R19-11#ac7535d32026-10-14
  • R20-11rel:R20-11#aa687a9f2026-10-14
  • R21-11rel:R21-11#aa687a9f2026-10-14
  • R22-11rel:R22-11#9ace322d2026-10-14
  • R23-11rel:R23-11#09d412822026-10-14
  • R24-11rel:R24-11#c1f9b0482026-10-14
  • R25-11rel:R25-11#88b468052026-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 GetFaultDetectionCounter [SWS_DM_00656] Upstream: RS_Diag_04068, RS_AP_00139

ara::core::Future< std::int8_t > GetFaultDetectionCounter () noexcept;

Returns the current value of the Fault Detection Counter (FDC) of this event.

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

Rückgabewert

TypBeschreibung
ara::core::Future<std::int8_t >Returns the current FaultDetectionCounter value.

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_00656
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00656@rel:R25-11#94f91774
Content hash
94f91774
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00656
Status: valid/unmigrated Version: rel:R25-11#4907132c 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_00656@rel:R25-11#4907132c
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#94f917742026-09-30
  • R19-11rel:R19-11#f9f594e72026-10-14
  • R20-11rel:R20-11#57d52b342026-10-14
  • R21-11rel:R21-11#678c683c2026-10-14
  • R22-11rel:R22-11#845aefab2026-10-14
  • R23-11rel:R23-11#f314b0512026-10-14
  • R24-11rel:R24-11#b946e5e42026-10-14
  • R25-11rel:R25-11#4907132c2026-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 GetTestComplete [SWS_DM_00655] Upstream: RS_Diag_04151, RS_AP_00139

ara::core::Future< bool > GetTestComplete () noexcept;

Get the status if the event has matured to test completed (corresponds to FDC = -128 or FDC = 127).

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

Rückgabewert

TypBeschreibung
ara::core::Future< bool >Return the current test_completed-state of this event. TRUE, if FDC = -128 or FDC = 127; FALSE in all other cases.

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_00655
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00655@rel:R25-11#2124e827
Content hash
2124e827
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00655
Status: valid/unmigrated Version: rel:R25-11#567ebe83 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_00655@rel:R25-11#567ebe83
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#2124e8272026-09-30
  • R19-11rel:R19-11#3073277b2026-10-14
  • R20-11rel:R20-11#2be275092026-10-14
  • R21-11rel:R21-11#1d60449a2026-10-14
  • R22-11rel:R22-11#5d7ba70b2026-10-14
  • R23-11rel:R23-11#6d14f8702026-10-14
  • R24-11rel:R24-11#1273d1452026-10-14
  • R25-11rel:R25-11#567ebe832026-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 SetEventStatusChangedNotifier [SWS_DM_00650] Upstream: RS_Diag_04183, RS_AP_00139

ara::core::Result< void > SetEventStatusChangedNotifier (EventStatus ByteNotifier notifier) noexcept;

Register a notifier function which is called if a diagnostic event 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: 07bc53ae711c Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

Via the method [SWS_DM_00650] of class ara::diag::Event (header file ara/diag/event.h), an Adaptive Application registers a callback function of type EventStatusByteNotifier. After successful registration, Diagnostic Management (DM) calls this notifier on every status change of the associated diagnostic event [SWS_DM_01029]. A consecutive call of the method overwrites the previously registered notifier [SWS_DM_00650]. The function has the signature ara::core::Result<void> SetEventStatusChangedNotifier(EventStatusByteNotifier notifier) noexcept and returns an empty result on success [SWS_DM_00650].

If an error occurs during processing, the method returns the error code DiagErrc::kInvalidArgument [SWS_DM_00650]. Although the interface is declared exception-safe (exception safe), it is explicitly considered not thread-safe (not thread-safe) [SWS_DM_00650]. Interpretation: Competing accesses to the same instance must be synchronized on the application side; presumably, registration should therefore preferably be performed during the initialization phase of the application. Question Q-d8ed099eaed6b197 (open)

Functionally, the notifier represents the asynchronous counterpart to the synchronous status query via GetEventStatus [SWS_DM_00886], as set forth in SWS Diagnostics §7.3.4.1.7 “Event status change notifications”. For collective instances, the class ara::diag::MultipleEvent provides the corresponding method [SWS_DM_01708] with the additional passing of a EventHandleType SWS Diagnostics §8.43.2.1.3.5 “SetEventStatusChangedNotifier”.

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/event.h"
Scopeclass ara::diag::Event
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
notifierThe function to be called if a diagnostic event is changed.

Rückgabewert

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

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_00650
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00650@rel:R25-11#a0cbc3d8
Content hash
a0cbc3d8
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00650
Status: valid/unmigrated Version: rel:R25-11#2c7ca3fc 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_00650@rel:R25-11#2c7ca3fc
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#a0cbc3d82026-09-30
  • R19-11rel:R19-11#dc5182fc2026-10-14
  • R20-11rel:R20-11#23d7e9432026-10-14
  • R21-11rel:R21-11#dbbe3d9e2026-10-14
  • R22-11rel:R22-11#ed3ac0b02026-10-14
  • R23-11rel:R23-11#6fbd522f2026-10-14
  • R24-11rel:R24-11#019f01af2026-10-14
  • R25-11rel:R25-11#2c7ca3fc2026-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_01679] Upstream: RS_AP_00147

Event & operator= (Event &)=delete;

Event shall be a single not assign-able instance.

Header-Datei#include "ara/diag/event.h"
Scopeclass ara::diag::Event

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

Record
AUTOSAR/AP/record/SWS_DM_01679
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01679@rel:R25-11#2fa03c0a
Content hash
2fa03c0a
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01679
Status: valid/unmigrated Version: rel:R25-11#10ef80b0 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_01679@rel:R25-11#10ef80b0
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#2fa03c0a2026-09-30
  • R23-11rel:R23-11#fccd65ac2026-10-14
  • R24-11rel:R24-11#10abe0b52026-10-14
  • R25-11rel:R25-11#10ef80b02026-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_01680] Upstream: RS_AP_00147

Event & operator= (Event &&)=delete;

Move assignment operator of Event.

Header-Datei#include "ara/diag/event.h"
Scopeclass ara::diag::Event

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

Record
AUTOSAR/AP/record/SWS_DM_01680
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01680@rel:R25-11#986c114c
Content hash
986c114c
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01680
Status: valid/unmigrated Version: rel:R25-11#c25e65da 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_01680@rel:R25-11#c25e65da
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#986c114c2026-09-30
  • R23-11rel:R23-11#89bb7bca2026-10-14
  • R24-11rel:R24-11#c25e65da2026-10-14
  • R25-11rel:R25-11#c25e65da2026-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 ~Event [SWS_DM_00648] Upstream: RS_Diag_04151, RS_AP_00134

~Event () noexcept;

Destructor of class Event.

Header-Datei#include "ara/diag/event.h"
Scopeclass ara::diag::Event
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_00648
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_00648@rel:R25-11#c8ade594
Content hash
c8ade594
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_00648
Status: valid/unmigrated Version: rel:R25-11#a0bd8c99 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_00648@rel:R25-11#a0bd8c99
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#c8ade5942026-09-30
  • R19-11rel:R19-11#484b371b2026-10-14
  • R20-11rel:R20-11#98c042472026-10-14
  • R21-11rel:R21-11#4af04e862026-10-14
  • R22-11rel:R22-11#f870d3302026-10-14
  • R23-11rel:R23-11#9789d55a2026-10-14
  • R24-11rel:R24-11#bd9345702026-10-14
  • R25-11rel:R25-11#a0bd8c992026-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