DEENESPTFRRUARHIKOZHNL

namespace ara::com

User GuideAI-GENERATED

Provides basic types, error domains, and interfaces for service-oriented communication in AUTOSAR Adaptive.
AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 9676f1a12dfa Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

Provides basic types, error domains, and interfaces for service-oriented communication in AUTOSAR Adaptive.

The namespace provides the core building blocks for service-oriented communication by binding service consumers via proxies and service providers via skeletons (ARAComAPI §7.6 “meta-model to Implementation”). The interaction comprises asynchronous service discovery, method calls with returns via futures, and event subscriptions via defined states ([SWS_CM_00310]). Key obligations include the correct resolution of instance identifiers as well as adherence to configured sample quotas and transmission intervals ([SWS_CM_10432]).

Context

The namespace ara::com provides the central types and mechanisms for service-oriented communication (Communication Management) within the AUTOSAR Adaptive Platform. The architectural model separates strictly between service consumers and service providers: On the consumer side (R-Port), client applications operate via generated proxy instances (ARAComAPI §7.6 “meta-model to Implementation”), whereas service providers on the server side expose their functionality via skeleton implementations (ARAComAPI §6.2 “Definition of BatteryState”).

The technical middleware (binding) mediates between proxy and skeleton. InstanceIdentifier serves to identify and distinguish individual service instances, with collections of concrete instances being managed via InstanceIdentifierContainer ([SWS_CM_00319]). The platform supports multi-binding scenarios in which abstract model identifiers are resolved to a list of technical bindings and instances (ARAComAPI §6.6 “InstanceIdentifier Resolution”).

client Client (ara::com Proxy) binding Communication Management (Binding / Middleware) client->binding Dienstsuche / Methodenaufruf / Event-Abonnement binding->client Future fulfillment / event delivery skeleton Server (ara::com Skeleton) binding->skeleton Dispatch / Methodenaufruf skeleton->binding Methodenantwort / Event-Bereitstellung

Context diagram: Interplay between proxy, middleware binding, and skeleton in service communication. Sources: ARAComAPI §7.6 “meta-model to Implementation”, ARAComAPI §6.6 “InstanceIdentifier Resolution”, [SWS_CM_10432].

Lifecycle

Services and communication connections are subject to clearly defined state models in ara::com. General service availability is represented via the enumeration ServiceState with the values kAvailable and kNotAvailable ([SWS_CM_01071]). State changes can be monitored by means of registered ServiceStateHandler ([SWS_CM_01072]).

For events and fields, SubscriptionState governs the lifecycle of a subscription with the states kNotSubscribed, kSubscriptionPending, and kSubscribed ([SWS_CM_00310]). State transitions are reported asynchronously to a SubscriptionStateChangeHandler ([SWS_CM_00311]). The transition from kNotSubscribed to kSubscriptionPending presumably takes place immediately upon sending the subscription request to the underlying transport binding. Question Q-60f7ecdf5768217a (open)

On the service implementation side, MethodCallProcessingMode controls the concurrency of incoming method calls: kPoll for manual polling, kEvent for concurrent, event-driven processing, and kEventSingleThread for sequential processing in a single thread ([SWS_CM_00301]). Sample management uses SampleAllocateePtr on the sender side to optimize allocations (e.g. zero-copy approaches via shared memory) ([SWS_CM_00308], ARAComAPI §6.18 “Event Allocate/Send sample Binding implementer hint”) and SamplePtr on the receiver side ([SWS_CM_10432]).

Usage Path

A typical sequence for service usage proceeds via the following steps:

  1. Service discovery: The consumer initiates the search for compatible service instances. Upon availability, the middleware passes a ServiceHandleContainer with found handles as well as a FindServiceHandle, with which ongoing searches can be terminated, via FindServiceHandler ([SWS_CM_00383], [SWS_CM_00304]).
  2. Proxy instantiation: The proxy instance is created locally in the client using a matching handle (ARAComAPI §6.3 “Handling of optional data elements on Skeleton side”).
  3. Method call: The method call overloads the call operator of the method wrapper class. Input parameters are passed, and the call returns a ara::com::Future that encapsulates the output parameters (ARAComAPI §6.10 “Adjust Method Class”, ARAComAPI §6.12 “Adjust Method Class”).
  4. Result processing: The client retrieves the result synchronously or asynchronously (e.g. via get()) and checks optional field elements for presence prior to access (ARAComAPI §6.3 “Handling of optional data elements on Skeleton side”).
  5. Event reception: Incoming data for subscribed events, fields, or triggers are processed via registered callbacks such as EventReceiveHandler ([SWS_CM_00309]), FieldReceiveHandler ([SWS_CM_11615]), or TriggerReceiveHandler ([SWS_CM_00351]).
Service-Interaktion von Dienstsuche bis ErgebnisabfrageAnwendung (Client)ProxySkeleton (Server)Use Case: Service discovery and instantiationFindServiceHandler registrierenServiceHandleContainer liefernProxy(handle) erzeugenUse Case: Method call and FutureMethodenaufruf()Service-Aufruf weiterleitenReturn ara::com::FutureErgebnis bereitstellenFuture::get() aufrufenErgebnisdaten liefern

Sequence diagram: Call sequence from service discovery via method call with future to result retrieval. Sources: [SWS_CM_00383], [SWS_CM_00304], ARAComAPI §6.3 “Handling of optional data elements on Skeleton side”, ARAComAPI §6.10 “Adjust Method Class”.

Error Scenarios

Error conditions in the communication subsystem are mapped via ComErrorDomain and the error codes in ComErrc ([SWS_CM_10432]). Access to the domain is performed via GetComErrorDomain() ([SWS_CM_11334]), whereas concrete errors are instantiated via MakeErrorCode() ([SWS_CM_11335]). In exceptional cases, ComException is thrown.

Typical error scenarios include:

  • Service availability: Calls to unprovided services lead to ComErrc::kServiceNotOffered or ComErrc::kServiceNotAvailable ([SWS_CM_10432]).
  • Configuration and instance resolution errors: If an identifier cannot be mapped to a InstanceIdentifier, the system reports ComErrc::kInstanceIDNotResolvable ([SWS_CM_10432], ARAComAPI §6.6 “InstanceIdentifier Resolution”).
  • Resource and subscription limits: If an application holds more SamplePtr instances than agreed upon in Subscribe(), ComErrc::kMaxSamplesExceeded occurs ([SWS_CM_10432]). If the maximum number of samples deviates upon re-subscribing, this results in ComErrc::kMaxSampleCountNotRealizable ([SWS_CM_10432]).
  • Protocol and timing conditions: In case of network errors or secure communication errors, ComErrc::kCommunicationFailure is reported. If transmission intervals are fallen below, transmission fails with ComErrc::kMinimumSendIntervalViolationError ([SWS_CM_10432]).
  • Field handling: Uninitialized field values lead to ComErrc::kFieldValueNotInitialized, missing set handlers to ComErrc::kFieldSetHandlerNotSet ([SWS_CM_10432]).

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

Topic map

KI-gestützte Gruppierung auf Basis der Records und Spezifikationsauszüge; keine Gliederung aus der AUTOSAR-Spezifikation.

Class diagram

Abgerundete Rahmen = Namespace- bzw. Klassen-Scopes; hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); graue Boxen = namespace-fremde bzw. externe Basisklassen. Klicken öffnet die jeweilige Klassen- bzw. cppreference-Seite.

G cluster_ns ara::com nara__com__ComErrorDomain ComErrorDomain next_ara__core__ErrorDomain ara::core::ErrorDomain nara__com__ComErrorDomain->next_ara__core__ErrorDomain nara__com__ComException ComException next_ara__core__Exception ara::core::Exception nara__com__ComException->next_ara__core__Exception nara__com__FindServiceHandle «struct» FindServiceHandle nara__com__InstanceIdentifier InstanceIdentifier nara__com__SamplePtr SamplePtr nara__com__ServiceIdentifierType ServiceIdentifierType nara__com__ServiceVersionType ServiceVersionType

Detail view

Select an entry in the outline.

Fehlerbehandlung

Defines a class representing the Communication error domain.

inherits from ara::core::ErrorDomain

Defines a class for exceptions to be thrown by the API.

inherits from ara::core::Exception

Returns a reference to the ara::com::ComErrorDomain object

constexpr const ara::core::ErrorDomain & GetComErrorDomain () noexcept;
MakeErrorCode function

Creates an instance of ara::core::ErrorCode

ComErrc enumeration

Defines the error codes for the ara::com::ComErrorDomain

enum class ComErrc : ara::core::ErrorDomain::CodeType {...};

Dienstidentität

Unique identifier of a specific AdaptivePlatformServiceInstance, to distinguish different instances of exactly the same service

Specifies a Service Identifier The exact type may be overridden by the Communication Management software provider

Specifies a Service Version

Holds a list of ara::com::InstanceIdentifiers. The assigned data type is allowed to be changed by the Communication Management software provider, but must adhere to [container.requirements.general] and [sequence.reqmts] requirements as per [30] A ara::core::Vector ([SWS_CORE_01301]) for example fulfills these requirements.

using InstanceIdentifierContainer = ara::core::Vector<Instance Identifier>;

Dienstsuche

The exact definition of ara::com::FindServiceHandle is Communication Management implementation specific

Callback function invoked if service availability changes. It takes as input parameter a handle container containing handles for all matching service instances and a ara::com:: FindServiceHandle which can be used to invoke StopFindService() from within the ara::com::FindServiceHandler.

using FindServiceHandler = std::function<void(ServiceHandle Container<T>, FindServiceHandle)>;

Holds a list of service handles and is used as a return value of any of the FindService() methods) • [SWS_CM_00122] • [SWS_CM_00622] . The assigned data type is allowed to be changed by the Communication Management software provider, but must adhere to [container.requirements.general] and [sequence.reqmts] requirements as per [30]. A ara::core::Vector ([SWS_CORE_ 01301]) for example fulfills these requirements.

using ServiceHandleContainer = ara::core::Vector<T>;

Datenempfang

SamplePtr class

Emulates a std::unique_ptr to an event sample. The ara::com::SamplePtr behaves as a std::unique_ptr as long as the event/ field is subscrib ≙ std::unique_ptr

SubscriptionState enumeration

The subscription state of an event.

enum class SubscriptionState : std::uint8_t {...};

Callback function invoked if new event data arrives for an event. The event receiver must provide the function implementation which is not required to be re-entrant. Usage of std::function is recommended but not mandatory. ≙ std::function

using EventReceiveHandler = std::function<void()>;

Callback function invoked if a new notification arrives for a field. The field receiver must provide the function implementation which is not required to be re-entrant. Usage of std::function is recommended but not mandatory. ≙ std::function

using FieldReceiveHandler = std::function<void()>;

Pointer to an allocated (by Communication Management) data sample. The implementation is allowed to be changed by the Communication Management software provider.

using SampleAllocateePtr = std::unique_ptr<T>;

Callback function invoked if ara::com::SubscriptionState of an event has changed.

using SubscriptionStateChangeHandler = std::function<void(Subscription State)>;

A function wrapper for the handler function that gets called in case a new trigger arrives for an event. The trigger receiver must provide the function implementation which is not required to be re-entrant. Usage of std::function is recommended but not mandatory. ≙ std::function

using TriggerReceiveHandler = std::function<void()>;

Dienstzustand

Processing modes for the service implementation.

enum class MethodCallProcessingMode : std::uint8_t {...};
ServiceState enumeration

The state of the service from GetServiceState()

enum class ServiceState : std::uint8_t {...};

Functor used as input arguments for any of the SetServiceStateChangeHandler() methods: • [SWS_CM_01074] • [SWS_CM_01076]

using ServiceStateHandler = std::function<void(ServiceState)>;

Enumerations

enumeration ComErrc [SWS_CM_10432] Upstream: RS_AP_00130, RS_AP_00122, RS_AP_00127

enum class ComErrc :         ara::core::ErrorDomain::CodeType {...};

Defines the error codes for the ara::com::ComErrorDomain

Header-Datei#include "ara/com/com_error_domain.h"
Forwarding-Header#include "ara/com/com_fwd.h"
Scopenamespace ara::com
SymbolComErrc
Basistypara::core::ErrorDomain::CodeType

Werte

EnumeratorBeschreibung
kServiceNotAvailable=1 Service is not available after being previously offered via Offer
Service()
kMaxSamplesExceeded=2 Application holds more ara::com::SamplePtrs than commited in Subscribe() Samples were possibly skipped.
kCommunicationFailure=3 The network binding reported a recoverable communications error or a secure communication failure
kFieldValueNotInitialized=6 Field value has yet not been initialized via Update() (see [SWS_CM_00128]
kFieldSetHandlerNotSet=7 Field SetHandler has not been registered via RegisterSet Handler()
kServiceNotOffered= 11 Service has not yet been offered via OfferService()
kInstanceIDNotResolvable= 15 The ara::core::InstanceSpecifier is valid but could not be resolved/mapped to an existing ara::com:: InstanceIdentifier
kMaxSampleCountNotRealizable= 16 Provided maxSampleCount for event re-subscription does not match the maxSampleCount for the current subscription
kUnknownApplicationError= 22 A remote service returned an unconfigured application error.
kMinimumSendIntervalViolationError= 23 Minimum Send Interval violation, because a transmission request for a service instance element (event, field or method call) was issued faster than allowed, i.e., the configured minimum send interval ServiceInterfaceDeploymentElement. minimumSendInterval for the service instance element has not yet expired.
AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 67f5508c5e1b Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The enumeration ComErrc defines, according to [SWS_CM_10432], the standardized error codes of ara::com::ComErrorDomain for recoverable errors according to EXP ARAComAPI §2 “Recoverable Errors”. It is transported in return types such as ara::core::Result or ara::core::Future of synchronous and asynchronous APIs of Communication Management to signal functional error causes precisely in the client or server context.

The enumerators cover specific error cases along the service life cycle and data transmission:

  • Service life cycle and binding: kServiceNotOffered indicates that a service has not yet been offered via OfferService() ([SWS_CM_00101]), while kServiceNotAvailable signals the intermittent loss. kInstanceIDNotResolvable occurs when a InstanceSpecifier cannot be resolved ([SWS_CM_00118]).
  • Event and sample subscriptions: kMaxSamplesExceeded warns of exceeding promised SamplePtr quotas, and kMaxSampleCountNotRealizable reports unsuitable values during resubscription via [SWS_CM_00141].
  • Fields and transmission: kFieldValueNotInitialized indicates missing initialization prior to Update() ([SWS_CM_00119]), kFieldSetHandlerNotSet a missing setter handler. Local network issues, such as during trigger transmission via [SWS_CM_00721], result in kCommunicationFailure ([SWS_CM_10517]). In addition, kMinimumSendIntervalViolationError penalizes cycle rate violations and kUnknownApplicationError unexpected server errors ([SWS_CM_10432]).

As a pure enumeration type, ComErrc has no state of its own; read and comparison operations on error values are therefore likely to be concurrently safe in the calling thread. Question Q-013822ee5711df2b (open) The actual error checking is the responsibility of the application after evaluating the respective result object.

This text was created and curated by an AI.

Implementer's Guide to follow (complexity I3)

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

Record
AUTOSAR/AP/record/SWS_CM_10432
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_10432@rel:R25-11#0540727f
Content hash
0540727f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_10432
Status: valid/unmigrated Version: rel:R25-11#a1bb25ac 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_CM_10432@rel:R25-11#a1bb25ac
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#0540727f2026-09-30
  • R19-11rel:R19-11#e85687322026-10-14
  • R20-11rel:R20-11#d76a076f2026-10-14
  • R21-11rel:R21-11#bba466f32026-10-14
  • R22-11rel:R22-11#defb05652026-10-14
  • R23-11rel:R23-11#6109561d2026-10-14
  • R24-11rel:R24-11#75455b1d2026-10-14
  • R25-11rel:R25-11#a1bb25ac2026-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

enumeration MethodCallProcessingMode [SWS_CM_00301] Upstream: RS_CM_00211

enum class MethodCallProcessingMode :               std::uint8_t {...};

Processing modes for the service implementation.

Header-Datei#include "ara/com/types.h"
Forwarding-Header#include "ara/com/com_fwd.h"
Scopenamespace ara::com
SymbolMethodCallProcessingMode
Basistypstd::uint8_t

Werte

EnumeratorBeschreibung
kPollPolling mode
kEventEvent driven and concurrent mode
kEventSingleThreadEvent driven, sequential mode
AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: ef6d7e9a36c3 Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The enumeration ara::com::MethodCallProcessingMode defines the processing modes for incoming method calls on a service instance [SWS_CM_00301]. It is passed as a parameter to the constructors of the skeleton classes, with the default value ara::com::MethodCallProcessingMode::kEvent predefined [SWS_CM_00130], [SWS_CM_00152], [SWS_CM_00153].

The enumerators control the concurrency and execution context of the service methods [SWS_CM_00301]:

  • kPoll: Polling mode. Incoming calls from service consumers are not executed automatically. The service implementation actively controls their execution by calling ProcessNextMethodCall() [SWS_CM_00199]. The pending method is processed synchronously in the context of this call. This ensures full control over thread and context switches on the service side ARAComAPI §6.3.3 “Event Buffering Approaches”.
  • kEvent: Event-driven and concurrent mode for parallel processing of incoming calls.
  • kEventSingleThread: Event-driven, sequential mode for single execution of method calls.

Error Handling and Restrictions:

  • If an invalid mode is passed to a skeleton constructor, violation WrongMethodCallProcessingModeViolation occurs [SWS_CM_00130], [SWS_CM_00153].
  • Calling ProcessNextMethodCall() on a skeleton constructed with kEvent likewise leads to a WrongMethodCallProcessingModeViolation [SWS_CM_00199] (interpretation: this is likely to apply to kEventSingleThread as well, since the method is intended only for kPoll). Question Q-bcd9f07119db44fb (open)

This usage note was generated automatically based on the AUTOSAR specifications.

Implementer's Guide to follow (complexity I2)

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

Record
AUTOSAR/AP/record/SWS_CM_00301
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_00301@rel:R25-11#0d3dccbc
Content hash
0d3dccbc
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_00301
Status: valid/unmigrated Version: rel:R25-11#80be2356 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_CM_00301@rel:R25-11#80be2356
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#0d3dccbc2026-09-30
  • R19-11rel:R19-11#25b194492026-10-14
  • R20-11rel:R20-11#25b194492026-10-14
  • R21-11rel:R21-11#0ad7b7102026-10-14
  • R22-11rel:R22-11#0ad7b7102026-10-14
  • R23-11rel:R23-11#6f47e07b2026-10-14
  • R24-11rel:R24-11#80be23562026-10-14
  • R25-11rel:R25-11#80be23562026-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

enumeration ServiceState [SWS_CM_01071]

enum class ServiceState :            std::uint8_t {...};

The state of the service from GetServiceState()

Header-Datei#include "ara/com/types.h"
Forwarding-Header#include "ara/com/com_fwd.h"
Scopenamespace ara::com
SymbolServiceState
Basistypstd::uint8_t

Werte

EnumeratorBeschreibung
kNotAvailable=0 Service is not available
kAvailable=1 Service is available

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

Record
AUTOSAR/AP/record/SWS_CM_01071
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_01071@rel:R25-11#8a4f1391
Content hash
8a4f1391
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_01071
Status: valid/unmigrated Version: rel:R25-11#b7ec2dcd Versionshistorie & Revisions (1 transition, 5 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_CM_01071@rel:R25-11#b7ec2dcd
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#8a4f13912026-09-30
  • R22-11rel:R22-11#e2b5988f2026-10-14
  • R23-11rel:R23-11#e2b5988f2026-10-14
  • R24-11rel:R24-11#e3fd192b2026-10-14
  • R25-11rel:R25-11#b7ec2dcd2026-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

enumeration SubscriptionState [SWS_CM_00310] Upstream: RS_CM_00103, RS_CM_00104, RS_CM_00106

enum class SubscriptionState :              std::uint8_t {...};

The subscription state of an event.

Header-Datei#include "ara/com/types.h"
Forwarding-Header#include "ara/com/com_fwd.h"
Scopenamespace ara::com
SymbolSubscriptionState
Basistypstd::uint8_t

Werte

EnumeratorBeschreibung
kSubscribedSubscription is active
kNotSubscribedSubscription is not active
kSubscriptionPendingSubscription is pending
AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: c356f26fdfb2 Provenance
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The enumeration SubscriptionState [SWS_CM_00310] represents the current state of a subscription in namespace ara::com based on type std::uint8_t. It defines three distinct states:

  • kNotSubscribed: The subscription is inactive.
  • kSubscriptionPending: The subscription is still pending or the connection is being re-established after a failure.
  • kSubscribed: The subscription is active.

The GetSubscriptionState() method serves for synchronous querying, which is provided on proxy events [SWS_CM_00316], proxy fields [SWS_CM_11604], and triggers [SWS_CM_01105] as well as skeleton triggers [SWS_CM_01109]. All of these query functions are declared as noexcept and guarantee complete exception safety.

For asynchronous reactions to status changes, applications can register a callback of type SubscriptionStateChangeHandler via SetSubscriptionStateChangeHandler() [SWS_CM_00311] [SWS_CM_00333]. If an invalid or empty handler is passed, the violation InvalidHandlerViolation occurs [SWS_CM_00333]. Deregistration is performed via UnsetSubscriptionStateChangeHandler() [SWS_CM_00334]. Furthermore, a template overload with ExecutorT allows specifying the execution context for the callback [SWS_CM_11354].

In the lifecycle of a proxy instance, SubscriptionState is closely interlinked with automatic updating: If a service instance fails, method calls fail and GetSubscriptionState() returns kSubscriptionPending for previously subscribed events ARAComAPI §6.1 “Auto Updating of Proxy Instance”. As soon as the service instance is reachable again via Service Discovery, communication management updates the connection transparently; GetSubscriptionState() then automatically returns kSubscribed again AUTOSAR_AP_EXP_ARAComAPI §5.3.5.2. Manual re-creation of the proxy or re-subscribing is not required in this process.

This text was generated by an AI and serves as an orienting supplement to the AUTOSAR specification.

Implementer's Guide to follow (complexity I3)

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

Record
AUTOSAR/AP/record/SWS_CM_00310
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_00310@rel:R25-11#316fa484
Content hash
316fa484
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_00310
Status: valid/unmigrated Version: rel:R25-11#7680ddc8 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_CM_00310@rel:R25-11#7680ddc8
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#316fa4842026-09-30
  • R19-11rel:R19-11#783a62a12026-10-14
  • R20-11rel:R20-11#783a62a12026-10-14
  • R21-11rel:R21-11#149257f62026-10-14
  • R22-11rel:R22-11#149257f62026-10-14
  • R23-11rel:R23-11#27673e7a2026-10-14
  • R24-11rel:R24-11#7680ddc82026-10-14
  • R25-11rel:R25-11#7680ddc82026-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

Type aliases

type alias EventReceiveHandler [SWS_CM_00309] Upstream: RS_CM_00203, RS_AP_00114, RS_AP_00120

using EventReceiveHandler = std::function<void()>;

Callback function invoked if new event data arrives for an event. The event receiver must provide the function implementation which is not required to be re-entrant. Usage of std::function is recommended but not mandatory.

Header-Datei#include "ara/com/types.h"
Scopenamespace ara::com
SymbolEventReceiveHandler

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

Record
AUTOSAR/AP/record/SWS_CM_00309
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_00309@rel:R25-11#7b6d0555
Content hash
7b6d0555
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_00309
Status: valid/unmigrated Version: rel:R25-11#223e8e61 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_CM_00309@rel:R25-11#223e8e61
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#7b6d05552026-09-30
  • R19-11rel:R19-11#395af5f02026-10-14
  • R20-11rel:R20-11#395af5f02026-10-14
  • R21-11rel:R21-11#db7e05e52026-10-14
  • R22-11rel:R22-11#395af5f02026-10-14
  • R23-11rel:R23-11#2779dae62026-10-14
  • R24-11rel:R24-11#dcc5017d2026-10-14
  • R25-11rel:R25-11#223e8e612026-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

type alias FieldReceiveHandler [SWS_CM_11615] Upstream: RS_CM_00203, RS_AP_00114, RS_AP_00120

using FieldReceiveHandler = std::function<void()>;

Callback function invoked if a new notification arrives for a field. The field receiver must provide the function implementation which is not required to be re-entrant. Usage of std::function is recommended but not mandatory.

Header-Datei#include "ara/com/types.h"
Scopenamespace ara::com
SymbolFieldReceiveHandler

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

Record
AUTOSAR/AP/record/SWS_CM_11615
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_11615@rel:R25-11#cfafcfd5
Content hash
cfafcfd5
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_11615
Status: valid/unmigrated Version: rel:R25-11#799baa76 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_CM_11615@rel:R25-11#799baa76
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#cfafcfd52026-09-30
  • R24-11rel:R24-11#fae206d62026-10-14
  • R25-11rel:R25-11#799baa762026-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

type alias FindServiceHandler [SWS_CM_00383] Upstream: RS_CM_00102

using FindServiceHandler = std::function<void(ServiceHandle Container<T>, FindServiceHandle)>;

Callback function invoked if service availability changes. It takes as input parameter a handle container containing handles for all matching service instances and a ara::com:: FindServiceHandle which can be used to invoke StopFindService() from within the ara::com::FindServiceHandler.

Header-Datei#include "ara/com/types.h"
Scopenamespace ara::com
SymbolFindServiceHandler

Template-Parameter

ParameterBeschreibung
TData type of data sample
Siehe auch: [SWS_CM_00125]

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

Record
AUTOSAR/AP/record/SWS_CM_00383
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_00383@rel:R25-11#5bc754b2
Content hash
5bc754b2
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_00383
Status: valid/unmigrated Version: rel:R25-11#4bb13392 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_CM_00383@rel:R25-11#4bb13392
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#5bc754b22026-09-30
  • R19-11rel:R19-11#e9374da52026-10-14
  • R20-11rel:R20-11#e9374da52026-10-14
  • R21-11rel:R21-11#e9374da52026-10-14
  • R22-11rel:R22-11#10a374092026-10-14
  • R23-11rel:R23-11#40b111b32026-10-14
  • R24-11rel:R24-11#29b459892026-10-14
  • R25-11rel:R25-11#4bb133922026-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

type alias InstanceIdentifierContainer [SWS_CM_00319] Upstream: RS_CM_00101, RS_CM_00102, RS_AP_00114, RS_AP_00122

using InstanceIdentifierContainer = ara::core::Vector<Instance Identifier>;

Holds a list of ara::com::InstanceIdentifiers. The assigned data type is allowed to be changed by the Communication Management software provider, but must adhere to [container.requirements.general] and [sequence.reqmts] requirements as per [30] A ara::core::Vector ([SWS_CORE_01301]) for example fulfills these requirements.

Literaturverzeichnis SWS CommunicationManagement: [30] ISO/IEC 14882:2014, Information technology – Programming languages – C++ – www.iso.org

Header-Datei#include "ara/com/types.h"
Scopenamespace ara::com
SymbolInstanceIdentifierContainer

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

Record
AUTOSAR/AP/record/SWS_CM_00319
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_00319@rel:R25-11#ef7a629e
Content hash
ef7a629e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_00319
Status: valid/unmigrated Version: rel:R25-11#fa8d6921 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_CM_00319@rel:R25-11#fa8d6921
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#ef7a629e2026-09-30
  • R19-11rel:R19-11#a868f3472026-10-14
  • R20-11rel:R20-11#92724e662026-10-14
  • R21-11rel:R21-11#431357ea2026-10-14
  • R22-11rel:R22-11#2ac28cb72026-10-14
  • R23-11rel:R23-11#bc0629c32026-10-14
  • R24-11rel:R24-11#e851c8ff2026-10-14
  • R25-11rel:R25-11#fa8d69212026-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

type alias SampleAllocateePtr [SWS_CM_00308] Upstream: RS_CM_00201

using SampleAllocateePtr = std::unique_ptr<T>;

Pointer to an allocated (by Communication Management) data sample. The implementation is allowed to be changed by the Communication Management software provider.

The precondition defined in [SWS_CM_00086] must be fulfilled. Otherwise it is considered a violation.

Header-Datei#include "ara/com/types.h"
Scopenamespace ara::com
SymbolSampleAllocateePtr

Template-Parameter

ParameterBeschreibung
TData type of data sample

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

Record
AUTOSAR/AP/record/SWS_CM_00308
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_00308@rel:R25-11#adf0f02d
Content hash
adf0f02d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_00308
Status: valid/unmigrated Version: rel:R25-11#039f8d79 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_CM_00308@rel:R25-11#039f8d79
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#adf0f02d2026-09-30
  • R19-11rel:R19-11#5ad593f62026-10-14
  • R20-11rel:R20-11#5ad593f62026-10-14
  • R21-11rel:R21-11#5ad593f62026-10-14
  • R22-11rel:R22-11#5ad593f62026-10-14
  • R23-11rel:R23-11#2153a31d2026-10-14
  • R24-11rel:R24-11#039f8d792026-10-14
  • R25-11rel:R25-11#039f8d792026-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

type alias ServiceHandleContainer [SWS_CM_00304] Upstream: RS_CM_00102

using ServiceHandleContainer = ara::core::Vector<T>;

Holds a list of service handles and is used as a return value of any of the FindService() methods) • [SWS_CM_00122] • [SWS_CM_00622] . The assigned data type is allowed to be changed by the Communication Management software provider, but must adhere to [container.requirements.general] and [sequence.reqmts] requirements as per [30]. A ara::core::Vector ([SWS_CORE_ 01301]) for example fulfills these requirements.

Literaturverzeichnis SWS CommunicationManagement: [30] ISO/IEC 14882:2014, Information technology – Programming languages – C++ – www.iso.org

Header-Datei#include "ara/com/types.h"
Scopenamespace ara::com
SymbolServiceHandleContainer

Template-Parameter

ParameterBeschreibung
Tservice handle

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

Record
AUTOSAR/AP/record/SWS_CM_00304
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_00304@rel:R25-11#7afe7d37
Content hash
7afe7d37
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_00304
Status: valid/unmigrated Version: rel:R25-11#6d2b7cf6 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_CM_00304@rel:R25-11#6d2b7cf6
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#7afe7d372026-09-30
  • R19-11rel:R19-11#5e4ae44f2026-10-14
  • R20-11rel:R20-11#f25f37592026-10-14
  • R21-11rel:R21-11#be1867dc2026-10-14
  • R22-11rel:R22-11#5d1adbf22026-10-14
  • R23-11rel:R23-11#156ff0142026-10-14
  • R24-11rel:R24-11#19b088802026-10-14
  • R25-11rel:R25-11#6d2b7cf62026-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

type alias ServiceStateHandler [SWS_CM_01072]

using ServiceStateHandler = std::function<void(ServiceState)>;

Functor used as input arguments for any of the SetServiceStateChangeHandler() methods: • [SWS_CM_01074] • [SWS_CM_01076]

Header-Datei#include "ara/com/types.h"
Scopenamespace ara::com
SymbolServiceStateHandler

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

Record
AUTOSAR/AP/record/SWS_CM_01072
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_01072@rel:R25-11#c869ffc2
Content hash
c869ffc2
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_01072
Status: valid/unmigrated Version: rel:R25-11#6c72f419 Versionshistorie & Revisions (1 transition, 5 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_CM_01072@rel:R25-11#6c72f419
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#c869ffc22026-09-30
  • R22-11rel:R22-11#152adeba2026-10-14
  • R23-11rel:R23-11#152adeba2026-10-14
  • R24-11rel:R24-11#720d0f2a2026-10-14
  • R25-11rel:R25-11#6c72f4192026-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

type alias SubscriptionStateChangeHandler [SWS_CM_00311] Upstream: RS_CM_00103, RS_CM_00104, RS_CM_00106

using SubscriptionStateChangeHandler = std::function<void(Subscription State)>;

Callback function invoked if ara::com::SubscriptionState of an event has changed.

Header-Datei#include "ara/com/types.h"
Scopenamespace ara::com
SymbolSubscriptionStateChangeHandler
AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: e8a7f7be42ec Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The type alias SubscriptionStateChangeHandler in namespace ara::com is declared as std::function<void(SubscriptionState)> in header file ara/com/types.h ([SWS_CM_00311]). It specifies the function signature for application callbacks triggered as soon as the ara::com::SubscriptionState of a subscribed proxy event changes ([SWS_CM_00311], EXP_ARAComAPI §5.3 “Proxy Class API’s”). When called, the new subscription state is passed directly as a parameter; a return value is not provided ([SWS_CM_00311]).

Registration of the handler is performed via method SetSubscriptionStateChangeHandler() of the respective proxy class (EXP_ARAComAPI §5.3.1 “Proxy Class API’s”, EXP_ARAComAPI §5.3 “Proxy Class API’s”). This operation returns a ara::core::Result<void> (EXP_ARAComAPI §5.3 “Proxy Class API’s”), through which application developers can synchronously check possible errors during registration. Specific removal of the registered callback is performed by calling UnsetSubscriptionStateChangeHandler() according to [SWS_CM_00334] (EXP_ARAComAPI §1 “Introduction”, EXP_ARAComAPI §5.3.1 “Proxy Class API’s”).

Regarding workflow and concurrency, state notification occurs asynchronously. Calling of the handler is likely to occur in the thread context of the communication infrastructure (interpretation). Question Q-8dda0cd4de0070bf (open) Therefore, the implementation of the callback must return promptly and be designed to be reentrant or thread-safe. Interplay of the handler integrates closely into the lifecycle of the event subscription, particularly in combination with Subscribe(), Unsubscribe(), and GetSubscriptionState() (EXP_ARAComAPI §5.3.1 “Proxy Class API’s”).

This text was created by an AI; it does not replace reading the specification.

Implementer's Guide to follow (complexity I2)

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

Record
AUTOSAR/AP/record/SWS_CM_00311
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_00311@rel:R25-11#ee97a259
Content hash
ee97a259
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_00311
Status: valid/unmigrated Version: rel:R25-11#21ac17ff 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_CM_00311@rel:R25-11#21ac17ff
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#ee97a2592026-09-30
  • R19-11rel:R19-11#e22ba4e32026-10-14
  • R20-11rel:R20-11#e22ba4e32026-10-14
  • R21-11rel:R21-11#e22ba4e32026-10-14
  • R22-11rel:R22-11#e22ba4e32026-10-14
  • R23-11rel:R23-11#5878c7452026-10-14
  • R24-11rel:R24-11#287ce5e32026-10-14
  • R25-11rel:R25-11#21ac17ff2026-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

type alias TriggerReceiveHandler [SWS_CM_00351] Upstream: RS_CM_00203, RS_AP_00114, RS_AP_00120

using TriggerReceiveHandler = std::function<void()>;

A function wrapper for the handler function that gets called in case a new trigger arrives for an event. The trigger receiver must provide the function implementation which is not required to be re-entrant. Usage of std::function is recommended but not mandatory.

Header-Datei#include "ara/com/types.h"
Scopenamespace ara::com
SymbolTriggerReceiveHandler

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

Record
AUTOSAR/AP/record/SWS_CM_00351
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_00351@rel:R25-11#7e62cd34
Content hash
7e62cd34
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_00351
Status: valid/unmigrated Version: rel:R25-11#fc6a9105 Versionshistorie & Revisions (1 transition, 6 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_CM_00351@rel:R25-11#fc6a9105
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#7e62cd342026-09-30
  • R21-11rel:R21-11#4d5accb82026-10-14
  • R22-11rel:R22-11#7e2a7c042026-10-14
  • R23-11rel:R23-11#9b69b1902026-10-14
  • R24-11rel:R24-11#f8c62c622026-10-14
  • R25-11rel:R25-11#fc6a91052026-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

Documentation of free functions

function GetComErrorDomain [SWS_CM_11334] Upstream: RS_AP_00120, RS_AP_00130

constexpr const ara::core::ErrorDomain & GetComErrorDomain () noexcept;

Returns a reference to the ara::com::ComErrorDomain object

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

use

The global function GetComErrorDomain in namespace ara::com provides a reference to the error domain object ara::com::ComErrorDomain [SWS_CM_11334]. The declaration is included via header ara/com/com_error_domain.h and takes the form of a synchronous, parameterless call SWS CommunicationManagement §8.12.3.1.1 “GetComErrorDomain”. As a return value, the function yields a constant reference of type const ara::core::ErrorDomain&, which represents the communication error domain in the system.

Error Handling and Exception Safety

The interface is explicitly declared as noexcept and is considered exception safe (exception safe) [SWS_CM_11334]. Because the function call is always successful, no runtime errors occur. Callers therefore do not need to provide error handling for the function call itself. Specific error codes, feedback channels, or reports to DET or DEM are not defined in the specification for this retrieval.

Concurrency and Interaction

Thanks to the declaration with constexpr and noexcept, the function is expected to be stateless, free of side effects, as well as fully reentrant and thread-safe; presumably it can also be executed at compile time. Question Q-21aafe1fdcb5997b (open) The provided error domain serves in the overall system as a reference instance to verify error codes from operations of Communication Management based on their domain membership and to distinguish them from other error sources [SWS_CM_11334].

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

Implementer's Guide to follow (complexity I1)

Header-Datei#include "ara/com/com_error_domain.h"
Scopenamespace ara::com
Exception-Sicherheitexception safe

Rückgabewert

TypBeschreibung
const ara::core::ErrorDomain &Reference to the ara::com::ComErrorDomain object

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

Record
AUTOSAR/AP/record/SWS_CM_11334
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_11334@rel:R25-11#84138e22
Content hash
84138e22
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_11334
Status: valid/unmigrated Version: rel:R25-11#540ecd6a 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_CM_11334@rel:R25-11#540ecd6a
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#84138e222026-09-30
  • R20-11rel:R20-11#6ab718532026-10-14
  • R21-11rel:R21-11#86c8bf622026-10-14
  • R22-11rel:R22-11#d0609f3d2026-10-14
  • R23-11rel:R23-11#93b5f2792026-10-14
  • R24-11rel:R24-11#8fd9abb62026-10-14
  • R25-11rel:R25-11#540ecd6a2026-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 MakeErrorCode [SWS_CM_11335] Upstream: RS_AP_00120, RS_AP_00121, RS_AP_00130

constexpr ara::core::ErrorCode MakeErrorCode (ara::com::ComErrc code, ara::core::ErrorDomain::SupportDataType data) noexcept;

Creates an instance of ara::core::ErrorCode

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

The helper function ara::com::MakeErrorCode serves to create an instance of ara::core::ErrorCode ([SWS_CM_11335], SWS CommunicationManagement §8.12.3.1.2 “MakeErrorCode”). It is declared via header file #include "ara/com/com_error_domain.h" in namespace ara::com. As input parameters, it accepts error number code of type ara::com::ComErrc as well as vendor-specific additional data data of type ara::core::ErrorDomain::SupportDataType and returns the corresponding error object synchronously.

Regarding execution safety, the function is specified as noexcept and expressly classified as exception safe (“exception safe”) ([SWS_CM_11335]). Runtime notifications via DET or DEM are not intended for this helper function, as it exclusively serves for constructing error objects. Due to declaration as constexpr and noexcept, the function is likely side-effect-free and reentrant, whereby calls are also permissible at compile time and from concurrent contexts. Question Q-43f118920f402d86 (open)

The architectural pattern follows the platform-wide error model of Adaptive AUTOSAR and is provided analogously for adjacent functional domains: Function ara::com::e2e::MakeErrorCode exists for end-to-end protection ([SWS_CM_12511], SWS CommunicationManagement §8.15.2.1.2 “MakeErrorCode”), while apext::com::secoc::MakeErrorCode is available for security functions ([SWS_CM_12522], SWS CommunicationManagement §C.2.2.1.2 “MakeErrorCode”).

This text was generated by an AI and serves as guidance.

Implementer's Guide to follow (complexity I2)

Header-Datei#include "ara/com/com_error_domain.h"
Scopenamespace ara::com
Exception-Sicherheitexception safe

Parameter (in)

ParameterBeschreibung
codeError code number.
dataVendor defined data associated with the error

Rückgabewert

TypBeschreibung
ara::core::ErrorCodeAn ara::core::ErrorCode object.

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

Record
AUTOSAR/AP/record/SWS_CM_11335
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CM_11335@rel:R25-11#e57005e7
Content hash
e57005e7
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_CommunicationManagement.pdf#nameddest=SWS_CM_11335
Status: valid/unmigrated Version: rel:R25-11#ed0a7b5c 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_CM_11335@rel:R25-11#ed0a7b5c
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#e57005e72026-09-30
  • R20-11rel:R20-11#3105d5f82026-10-14
  • R21-11rel:R21-11#14964c692026-10-14
  • R22-11rel:R22-11#d4a3decc2026-10-14
  • R23-11rel:R23-11#abab96942026-10-14
  • R24-11rel:R24-11#555364d52026-10-14
  • R25-11rel:R25-11#ed0a7b5c2026-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