DEENESPTFRRUARHIKOZHNL

class ara::diag::MultipleEvent

[SWS_DM_01704] Upstream: RS_Diag_04151

class MultipleEvent final {...};

Class to implement operations on diagnostic Events with the multiple event interfaces.

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

User GuideKI-GENERIERT

Ermöglicht das Abfragen und Überwachen mehrerer Diagnoseereignisse über Ereignis-Handles und Callback-Benachrichtigungen.
KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 4cd8b0cbe34d Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Ermöglicht das Abfragen und Überwachen mehrerer Diagnoseereignisse über Ereignis-Handles und Callback-Benachrichtigungen.

Die Klasse ermöglicht Anwendungen die zustandsbezogene Abfrage und Überwachung mehrerer Diagnoseereignisse über eine gemeinsame Schnittstelle anhand von Event-Handles [SWS_DM_01705]. Neben der Registrierung von Benachrichtigungs-Callbacks stehen asynchrone Methoden zur Ermittlung von Event-Status, Entprellung, Fehlerzähler und DTC-Nummer bereit [SWS_DM_01707], [SWS_DM_01709]. Instanzen sind weder kopier- noch verschiebbar und erfordern wegen des nicht threadsicheren Destruktors eine geordnete Beendigung aktiver Operationen vor der Freigabe [SWS_DM_01706], [SWS_DM_02067].

Kontext

Die Klasse ara::diag::MultipleEvent stellt der Anwendung Schnittstellen bereit, um Diagnoseereignisse über Schnittstellen für Mehrfachereignisse abzufragen und zu überwachen [SWS_DM_01705]. Im Unterschied zu Einzel-Event-Klassen adressieren Operationen auf Instanzen von MultipleEvent konkrete Ereignisse über einen Bezeichner vom Typ EventHandleType [SWS_DM_01707], [SWS_DM_01708]. Die Klasse fungiert als Schnittstelle zwischen der anwendenden Softwarekomponente und dem Diagnose-Management (DM) von Adaptive AUTOSAR AUTOSAR AP SWS Diagnostics, S. 69. Über den Port-Prototyp eines DiagnosticMultipleEventInterface wird das Objekt an die konfigurierte Diagnose-Infrastruktur gebunden [SWS_DM_01705].

Lebenszyklus

Eine Instanz von MultipleEvent wird über einen expliziten Konstruktor unter Angabe eines ara::core::InstanceSpecifier erzeugt [SWS_DM_01705]. Der Konstruktor ist threadsicher und verifiziert die modellierte Bindung an einen Port-Prototyp vom Schnittstellentyp DiagnosticMultipleEventInterface [SWS_DM_01705]. Schlägt das Mapping fehl oder wird dieselbe Instanzkennung innerhalb des Prozesses wiederverwendet, meldet die Plattform entsprechende Verletzungen wie InstanceSpecifierAlreadyInUseViolation oder PortInterfaceMappingViolation [SWS_DM_01705].

Kopier- und Verschiebeoperationen sind für MultipleEvent vollständig unterbunden: Sowohl der Copy- und Move-Konstruktor als auch die entsprechenden Zuweisungsoperatoren sind als gelöscht deklariert [SWS_DM_02067], [SWS_DM_02068], [SWS_DM_02069], [SWS_DM_02070]. Das Objekt besitzt somit strikte Identität und verbleibt an seinem Erzeugungsort. Der Destruktor ~MultipleEvent() ist nicht threadsicher spezifiziert [SWS_DM_01706]. Aufrufende Komponenten müssen daher vor der Zerstörung sicherstellen, dass keine asynchronen Abfragen oder Benachrichtigungen mehr über die Instanz laufen AUTOSAR AP SWS Diagnostics, S. 78.

Nutzungspfad

Nach der Instanziierung registriert die Anwendung typischerweise eine Callback-Funktion mittels SetEventStatusChangedNotifier, um über Statusänderungen eines bestimmten Ereignisses (identifiziert via EventHandleType) informiert zu werden [SWS_DM_01708]. Ein erneuter Aufruf dieser Methode für dasselbe Event überschreibt den zuvor gesetzten Notifier [SWS_DM_01708]. Diese Registrierungsfunktion ist nicht threadsicher [SWS_DM_01708].

Im laufenden Betrieb können aktuelle Diagnoseinformationen gezielt pro Event-Handle abgefragt werden. Alle zustandsbezogenen Leseoperationen liefern ihre Daten asynchron in einem ara::core::Future zurück:

  • GetEventStatus liefert das aktuelle Statusbyte des Ereignisses als EventStatusByte [SWS_DM_01707].
  • GetDebouncingStatus gibt den Entprellzustand (DebouncingState) des Ereignisses zurück [SWS_DM_01710].
  • GetFaultDetectionCounter liefert den aktuellen Fehlererkennungszähler (FaultDetectionCounter) als vorzeichenbehafteten 8-Bit-Ganzzahlwert [SWS_DM_01711].
  • GetDTCNumber fragt die zugeordnete DTC-Nummer im angeforderten DTCFormatType ab [SWS_DM_01709].

Die Threadsicherheit dieser Abfragefunktionen hängt von der Konfiguration ab [SWS_DM_01707], [SWS_DM_01709], [SWS_DM_01710], [SWS_DM_01711].

Nutzungsablauf ara::diag::MultipleEventAnwendungMultipleEventDiagnoseManagementUse Case: InstanziierungMultipleEvent(specifier)Bindung an PortPrototypeBestätigung / BereitstellungUse Case: Notifier-RegistrierungSetEventStatusChangedNotifier(handle, notifier)Result<void>Use Case: Status- und DTC-AbfrageGetEventStatus(handle)Statusabfrage weiterleitenEventStatusByteFuture<EventStatusByte>GetDTCNumber(handle, dtcFormat)DTC-Abfrage weiterleitenDTC-NummerFuture<uint32_t>

Sequenzdiagramm: Typischer Nutzungspfad zur Beobachtung und Abfrage von Diagnoseereignissen über MultipleEvent. Quellen: [SWS_DM_01705], [SWS_DM_01707], [SWS_DM_01708], [SWS_DM_01709], [SWS_DM_01710], [SWS_DM_01711]

Fehlerszenarien

Methoden von MultipleEvent signalisieren Fehlerzustände über den Typ DiagErrc, der entweder in einem ara::core::Result oder im zurückgegebenen ara::core::Future gekapselt transportiert wird [SWS_DM_01707], [SWS_DM_01708], [SWS_DM_01709]. Folgende Fehlerfälle sind spezifiziert:

Im Fehlerfall garantieren die Operationen Rollback-Semantik [SWS_DM_01707], [SWS_DM_01709].

Dieser Leitfaden basiert ausschließlich auf den Spezifikationsvorgaben aus AUTOSAR Adaptive R25-11.

Mitgliederkarte

Klassendiagramm

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

G nara__diag__MultipleEvent593 MultipleEvent + MultipleEvent() + operator=() + ~MultipleEvent() + GetDTCNumber() + GetDebouncingStatus() + GetEventStatus() + GetFaultDetectionCounter() + SetEventStatusChangedNotifier()

Detailansicht

Wähle in der Gliederung einen Eintrag aus.

Konstruktoren und Destruktor

MultipleEvent function 3

Constructor MultipleEvent class.

Überladungen MultipleEvent 3
explicit MultipleEvent (const ara::core::InstanceSpecifier &specifier) noexcept; SWS_DM_01705
MultipleEvent (MultipleEvent &&) noexcept=delete; SWS_DM_02069
MultipleEvent (MultipleEvent &)=delete; SWS_DM_02070

Destructor of class MultipleEvent.

~MultipleEvent () noexcept;

Methoden

Get the current debouncing status of the requested event.

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

Returns the DTC-ID related to requested event.

ara::core::Future< std::uint32_t > GetDTCNumber (EventHandleType event Handle, DTCFormatType dtcFormat) noexcept;

Returns the current status of the requested event.

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

Returns the current value of Fault Detection Counter of the selected event.

ara::core::Future< std::int8_t > GetFaultDetectionCounter (EventHandle Type eventHandle) 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 (EventHandle Type eventHandle, EventStatusByteNotifier notifier) noexcept;

Operatoren

operator= function 2

Copy assignment operator of MultipleEvent.

Überladungen = 2
MultipleEvent & operator= (MultipleEvent &)=delete; SWS_DM_02067
MultipleEvent & operator= (MultipleEvent &&)=delete; SWS_DM_02068

Dokumentation der Methoden

function GetDTCNumber [SWS_DM_01709] Upstream: RS_Diag_04201, RS_AP_00139, RS_AP_00119

ara::core::Future< std::uint32_t > GetDTCNumber (EventHandleType event Handle, DTCFormatType dtcFormat) noexcept;

Returns the DTC-ID related to requested event.

Header-Datei#include "ara/diag/multiple_event.h"
Scopeclass ara::diag::MultipleEvent
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
eventHandleIdentifies the requested event
dtcFormatDefine DTC format type for the return value.

Rückgabewert

TypBeschreibung
ara::core::Future<std::uint32_t >DTC number in respective DTCFormatType.

Fehler

FehlercodeBeschreibung
DiagErrc::kInvalidArgumentrollback_semantics e.g. kPreFailed with internal debouncing
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_01709
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01709@rel:R25-11#bec474d7
Content hash
bec474d7
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01709
Status: valid/unmigrated Version: rel:R25-11#e7981753 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_01709@rel:R25-11#e7981753
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#bec474d72026-09-30
  • R23-11rel:R23-11#9a0ba31b2026-10-14
  • R24-11rel:R24-11#e8916a392026-10-14
  • R25-11rel:R25-11#e79817532026-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_01710] Upstream: RS_Diag_04068, RS_Diag_04225, RS_AP_00139

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

Get the current debouncing status of the requested event.

Header-Datei#include "ara/diag/multiple_event.h"
Scopeclass ara::diag::MultipleEvent
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
eventHandleIdentifies the requested event

Rückgabewert

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

Fehler

FehlercodeBeschreibung
DiagErrc::kInvalidArgumentrollback_semantics e.g. kPreFailed with internal debouncing
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_01710
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01710@rel:R25-11#02687f5a
Content hash
02687f5a
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01710
Status: valid/unmigrated Version: rel:R25-11#66286266 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_01710@rel:R25-11#66286266
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#02687f5a2026-09-30
  • R23-11rel:R23-11#74e6f1862026-10-14
  • R24-11rel:R24-11#ae2c6ff62026-10-14
  • R25-11rel:R25-11#662862662026-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_01707] Upstream: RS_Diag_04151, RS_AP_00139

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

Returns the current status of the requested event.

Header-Datei#include "ara/diag/multiple_event.h"
Scopeclass ara::diag::MultipleEvent
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
eventHandleHandle of the Event

Rückgabewert

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

Fehler

FehlercodeBeschreibung
DiagErrc::kInvalidArgumentrollback_semantics e.g. kPreFailed with internal debouncing
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_01707
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01707@rel:R25-11#00fb8fb8
Content hash
00fb8fb8
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01707
Status: valid/unmigrated Version: rel:R25-11#60d26ba2 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_01707@rel:R25-11#60d26ba2
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#00fb8fb82026-09-30
  • R23-11rel:R23-11#959068f12026-10-14
  • R24-11rel:R24-11#dd57a5052026-10-14
  • R25-11rel:R25-11#60d26ba22026-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_01711] Upstream: RS_AP_00139

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

Returns the current value of Fault Detection Counter of the selected event.

Header-Datei#include "ara/diag/multiple_event.h"
Scopeclass ara::diag::MultipleEvent
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
eventHandleIdentifies the requested event

Rückgabewert

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

Fehler

FehlercodeBeschreibung
DiagErrc::kInvalidArgumentrollback_semantics e.g. kPreFailed with internal debouncing
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_01711
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01711@rel:R25-11#4982ea84
Content hash
4982ea84
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01711
Status: valid/unmigrated Version: rel:R25-11#5c4028f4 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_01711@rel:R25-11#5c4028f4
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#4982ea842026-09-30
  • R23-11rel:R23-11#50dedae62026-10-14
  • R24-11rel:R24-11#58737ccd2026-10-14
  • R25-11rel:R25-11#5c4028f42026-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 MultipleEvent [SWS_DM_01705] Upstream: RS_Diag_04151, RS_AP_00137, RS_AP_00170, RS_AP_00171, RS_AP_00172, RS_AP_00173

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

Constructor MultipleEvent class.

Header-Datei#include "ara/diag/multiple_event.h"
Scopeclass ara::diag::MultipleEvent
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 DiagnosticMultipleEventPortMapping needs to be typed by a DiagnosticMultipleEventInterface. 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 DiagnosticMultipleEventInterface.

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

Record
AUTOSAR/AP/record/SWS_DM_01705
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01705@rel:R25-11#e97676eb
Content hash
e97676eb
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01705
Status: valid/unmigrated Version: rel:R25-11#14b1154a 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_01705@rel:R25-11#14b1154a
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#e97676eb2026-09-30
  • R23-11rel:R23-11#4e9686b02026-10-14
  • R24-11rel:R24-11#b064f42e2026-10-14
  • R25-11rel:R25-11#14b1154a2026-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 MultipleEvent [SWS_DM_02069] Upstream: RS_AP_00147

MultipleEvent (MultipleEvent &&) noexcept=delete;

Move constructor of MultipleEvent.

Header-Datei#include "ara/diag/multiple_event.h"
Scopeclass ara::diag::MultipleEvent

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

Record
AUTOSAR/AP/record/SWS_DM_02069
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02069@rel:R25-11#8bb5b78d
Content hash
8bb5b78d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02069
Status: valid/unmigrated Version: rel:R25-11#8fc0e2a4 Versionshistorie & Revisions (1 transition, 3 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_02069@rel:R25-11#8fc0e2a4
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#8bb5b78d2026-09-30
  • R24-11rel:R24-11#8fc0e2a42026-10-14
  • R25-11rel:R25-11#8fc0e2a42026-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 MultipleEvent [SWS_DM_02070] Upstream: RS_AP_00147

MultipleEvent (MultipleEvent &)=delete;

Copy constructor of MultipleEvent.

Header-Datei#include "ara/diag/multiple_event.h"
Scopeclass ara::diag::MultipleEvent

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

Record
AUTOSAR/AP/record/SWS_DM_02070
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02070@rel:R25-11#b96cd628
Content hash
b96cd628
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02070
Status: valid/unmigrated Version: rel:R25-11#fff39381 Versionshistorie & Revisions (1 transition, 3 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_02070@rel:R25-11#fff39381
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#b96cd6282026-09-30
  • R24-11rel:R24-11#fff393812026-10-14
  • R25-11rel:R25-11#fff393812026-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_01708] Upstream: RS_Diag_04183, RS_AP_00139

ara::core::Result< void > SetEventStatusChangedNotifier (EventHandle Type eventHandle, EventStatusByteNotifier 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.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: bd91ad4f4cb5 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung

Die Methode ara::diag::MultipleEvent::SetEventStatusChangedNotifier [SWS_DM_01708] registriert eine Callback-Funktion vom Typ EventStatusByteNotifier, die aufgerufen wird, wenn sich der Zustand eines Diagnose-Events ändert. Über den Parameter eventHandle wird das gewünschte Event innerhalb der Instanz identifiziert. Die Methode ist als noexcept spezifiziert und gibt ein ara::core::Result<void> zurück. Ein erneuter Aufruf überschreibt den zuvor registrierten Notifier [SWS_DM_01708].

Fehlerbehandlung

Tritt bei der Registrierung ein Fehler auf, liefert das ara::core::Result einen entsprechenden Fehlercode zurück. Spezifiziert ist der Fehler DiagErrc::kInvalidArgument, beispielsweise im Kontext interner Entprellung wie kPreFailed [SWS_DM_01708].

Nebenläufigkeit und Einschränkungen

Die Operation ist als exception safe deklariert, jedoch ausdrücklich als not thread-safe eingestuft [SWS_DM_01708]. Zeitgleiche Aufrufe auf derselben Instanz müssen daher extern synchronisiert werden.

Zusammenspiel

Während die Klasse ara::diag::Event mit SetEventStatusChangedNotifier [SWS_DM_00650] einzelne Events ohne Handle verwaltet, fasst MultipleEvent mehrere Events zusammen. Vermutlich veranlasst der Diagnostic Management (DM) analog zu [SWS_DM_01029] bei jeder Statusänderung des über eventHandle zugeordneten Events den Aufruf des registrierten Notifiers AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.7 „Event status change notifications“. Frage Q-ef7791b2a1106582 (offen)

Dieser Nutzungshinweis wurde automatisiert auf Basis der AUTOSAR-Spezifikation erstellt.

Implementer's Guide folgt (Komplexität I2)

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

Parameter (in)

ParameterBeschreibung
eventHandleIdentifies the requested event
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
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_01708
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01708@rel:R25-11#8d52a1ae
Content hash
8d52a1ae
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01708
Status: valid/unmigrated Version: rel:R25-11#75cdce7a 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_01708@rel:R25-11#75cdce7a
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#8d52a1ae2026-09-30
  • R23-11rel:R23-11#09aaa2182026-10-14
  • R24-11rel:R24-11#f4a611642026-10-14
  • R25-11rel:R25-11#75cdce7a2026-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_02067] Upstream: RS_AP_00147

MultipleEvent & operator= (MultipleEvent &)=delete;

Copy assignment operator of MultipleEvent.

Header-Datei#include "ara/diag/multiple_event.h"
Scopeclass ara::diag::MultipleEvent

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

Record
AUTOSAR/AP/record/SWS_DM_02067
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02067@rel:R25-11#eea970b1
Content hash
eea970b1
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02067
Status: valid/unmigrated Version: rel:R25-11#5d5f9dd0 Versionshistorie & Revisions (1 transition, 3 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_02067@rel:R25-11#5d5f9dd0
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#eea970b12026-09-30
  • R24-11rel:R24-11#5d5f9dd02026-10-14
  • R25-11rel:R25-11#5d5f9dd02026-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_02068] Upstream: RS_AP_00147

MultipleEvent & operator= (MultipleEvent &&)=delete;

Move assignment operator of MultipleEvent.

Header-Datei#include "ara/diag/multiple_event.h"
Scopeclass ara::diag::MultipleEvent

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

Record
AUTOSAR/AP/record/SWS_DM_02068
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02068@rel:R25-11#5e2fb56f
Content hash
5e2fb56f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02068
Status: valid/unmigrated Version: rel:R25-11#77174b30 Versionshistorie & Revisions (1 transition, 3 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_02068@rel:R25-11#77174b30
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#5e2fb56f2026-09-30
  • R24-11rel:R24-11#77174b302026-10-14
  • R25-11rel:R25-11#77174b302026-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 ~MultipleEvent [SWS_DM_01706] Upstream: RS_Diag_04151, RS_AP_00134

~MultipleEvent () noexcept;

Destructor of class MultipleEvent.

Header-Datei#include "ara/diag/multiple_event.h"
Scopeclass ara::diag::MultipleEvent
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_01706
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01706@rel:R25-11#de8d63a3
Content hash
de8d63a3
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01706
Status: valid/unmigrated Version: rel:R25-11#3c4e00c2 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_01706@rel:R25-11#3c4e00c2
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#de8d63a32026-09-30
  • R23-11rel:R23-11#93abb2b92026-10-14
  • R24-11rel:R24-11#3edfe3082026-10-14
  • R25-11rel:R25-11#3c4e00c22026-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