DEENESPTFRRUARHIKOZHNL

class ara::tsync::TsyncErrorDomain

[SWS_TS_00904] Upstream: RS_AP_00130, RS_AP_00122, RS_AP_00127, RS_AP_00154, RS_AP_00150

class TsyncErrorDomain final :               public ara::core::ErrorDomain {...};

Defines a class representing the Time Synchronization error domain.

Header-Datei#include "ara/tsync/tsync_error_domain.h"
Forwarding-Header#include "ara/tsync/tsync_fwd.h"
Scopenamespace ara::tsync
Basisklasse(n)ara::core::ErrorDomain
Unique IDAs per ara::tsync::TsyncErrorDomain in [SWS_CORE_90023]

User GuideAI-GENERATED

Encapsulates the Time Synchronization error domain and maps error codes to descriptive texts and C++ exceptions.
AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 0cbe92e308a4 Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

Encapsulates the Time Synchronization error domain and maps error codes to descriptive texts and C++ exceptions.

Error domain ara::tsync::TsyncErrorDomain maps textual descriptions to the error codes of Time Synchronization and binds them to the platform's error handling system ([SWS_TS_00906]). It provides methods for identification and message querying and enables the conversion of errors into specific C++ exceptions ([SWS_TS_00908]). All read operations and construction are implemented in a thread-safe manner. When exception support is disabled in the toolchain, throwing exceptions via the domain is not available.

Context

Class ara::tsync::TsyncErrorDomain defines the error domain for the Time Synchronization functional cluster (Time Synchronization, tsync) in the AUTOSAR Adaptive Platform. As a concrete manifestation of the general error domain ara::core::ErrorDomain, it forms the bridge between platform-wide error handling mechanisms and the time-specific error states of the module. It uniquely categorizes error codes of enumeration Errc ([SWS_TS_01266]) and provides textual as well as semantic descriptions for synchronization problems that have occurred. Via the member function Name(), the class provides a fixed string identifier for the domain ([SWS_TS_00906]). Typical interaction partners are the components and interfaces of module tsync that generate errors, the error objects of ara::core, and utilizing applications that query time information and need to analyze or forward erroneous states.

Lifecycle

Instances of the class are initialized via the parameterless constructor TsyncErrorDomain() ([SWS_TS_00905]). The constructor is specified as exception-safe (exception safe) and thread-safe (thread-safe) ([SWS_TS_00905]). Interpretation: In practice, the object is likely to be provided as a long-lived, global instance, since error domains in the AUTOSAR Adaptive Platform are retained for the runtime of the process and have no mutable state data. Question Q-1e9a43ce9dd340d2 (open) After instantiation, the object has no mutable lifecycle phases or internal state transitions. All read accesses via Name() ([SWS_TS_00906]) and Message() ([SWS_TS_00907]) are defined as exception-safe and thread-safe, so that the instance can be queried concurrently and without synchronization by multiple threads.

Usage Path

In regular operation, the error domain comes into play as soon as an operation of module tsync fails or an error status is to be evaluated. An error is primarily identified via type alias Errc, which refers to enumeration TsyncErrc ([SWS_TS_01266]). For diagnosis or logging, a software component calls function Message() with the corresponding error code to obtain the associated text message as a constant pointer to a character string ([SWS_TS_00907]). In addition, the identification string of the domain can be determined via Name() ([SWS_TS_00906]).

If an error is to be propagated not as a value but within the scope of classic exception handling, member function ThrowAsException() is used ([SWS_TS_00908]). This call accepts an object of type ara::core::ErrorCode, creates a new instance of type TsyncException from it – also accessible via the class-internal alias Exception ([SWS_TS_01267]) – and throws it as a C++ exception ([SWS_TS_00908]). The sequence below illustrates this usage path.

Exception throwing via ThrowAsExceptionApplicationTsyncErrorDomainTsyncExceptionThrowAsException(errorCode)Creation from errorCodeInstanz erzeugtthrow TsyncExceptionFehlerbehandlung (catch)

Sequence diagram: Sequence of throwing an exception via ThrowAsException. Sources: [SWS_TS_00908], [SWS_TS_01267].

Error Scenarios

The error spectrum of the domain is represented via enumeration Errc ([SWS_TS_01266]). Error codes are passed to Message(), where the function always returns the associated message in an exception-safe and thread-safe manner ([SWS_TS_00907]). When using ThrowAsException(), the function is by definition considered not exception-safe (not exception safe), as it aborts execution of the normal control flow and throws a C++ exception ([SWS_TS_00908]).

A crucial constraint concerns the compiler and toolchain configuration: If C++ exceptions are disabled during the compilation process, ThrowAsException() does not participate in overload resolution according to platform specifications ([SWS_TS_00908]). In deployment-specific environments without exception support, applications must therefore rely on the value-based return mechanism using result objects and must not call exception generation.

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

Member map

Constructors and destructor

1

Type aliases

2

Class diagram

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

G nara__tsync__TsyncErrorDomain367 TsyncErrorDomain + TsyncErrorDomain() + Message() + Name() + ThrowAsException() nara__core__ErrorDomain335 ErrorDomain nara__tsync__TsyncErrorDomain367->nara__core__ErrorDomain335

Detail view

Select an entry in the outline.

Constructors and destructor

Constructs a new TsyncErrorDomain object.

TsyncErrorDomain () noexcept;

Methods

Message function

Returns the message associated with errorCode.

const char * Message (CodeType errorCode) const noexcept override;
Name function

Returns a string constant associated with TsyncErrorDomain.

const char * Name () const noexcept override;

Creates a new instance of TsyncException from errorCode and throws it as a C++ exception. As per SWS_CORE_10304 this function does not participate in overload resolution when C++ exceptions are disabled in the compiler toolchain.

void ThrowAsException (const ara::core::ErrorCode &errorCode) const noexcept(false) override;

Type aliases

Errc type alias

Alias for the error code value enumeration

using Errc = TsyncErrc;
Exception type alias

Alias for the exception base class

Method documentation

function Message [SWS_TS_00907] Upstream: RS_AP_00120, RS_AP_00121, RS_AP_00130

const char * Message (CodeType errorCode) const noexcept override;

Returns the message associated with errorCode.

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

use

The method Message of class ara::tsync::TsyncErrorDomain serves to synchronously retrieve a textual error description for a passed error code [SWS_TS_00907]. It is provided via the header #include "ara/tsync/tsync_error_domain.h". As input parameter, the function takes errorCode of type CodeType and returns a constant string pointer (const char *) to the corresponding message [SWS_TS_00907].

Error Handling and Concurrency

The interface guarantees complete exception safety (exception safe) and is declared as noexcept, which is why the call is guaranteed to proceed without C++ exceptions [SWS_TS_00907]. Furthermore, the function is specified as thread-safe and can safely be called concurrently from multiple threads [SWS_TS_00907]. Interpretation: The returned const char * is likely to point to immutable, static memory, so that no manual memory deallocation arises for the caller. Question Q-933f88e4fde03016 (open)

Interaction

As an overridden method (override), the function fits into the unified error model of AUTOSAR Adaptive [SWS_TS_00907]. In a similar manner, apext::tsync::TsyncFvmErrorDomain from the header #include "apext/tsync/fvm_error_domain.h" also implements an identically named Message function for resolving domain-specific error messages under the same guarantees regarding thread safety and exception safety [SWS_TS_14210].

This usage note was generated automatically based on the specification.

Header-Datei#include "ara/tsync/tsync_error_domain.h"
Scopeclass ara::tsync::TsyncErrorDomain
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
errorCodeThe error code number.

Rückgabewert

TypBeschreibung
const char *The message associated with the error code.

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

Record
AUTOSAR/AP/record/SWS_TS_00907
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_00907@rel:R25-11#fb6984b6
Content hash
fb6984b6
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_00907
Status: valid/unmigrated Version: rel:R25-11#16ac395e 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_TS_00907@rel:R25-11#16ac395e
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#fb6984b62026-09-30
  • R23-11rel:R23-11#92c825fc2026-10-14
  • R24-11rel:R24-11#16ac395e2026-10-14
  • R25-11rel:R25-11#16ac395e2026-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 Name [SWS_TS_00906] Upstream: RS_AP_00120, RS_AP_00130

const char * Name () const noexcept override;

Returns a string constant associated with TsyncErrorDomain.

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

Usage and Call Context

The member function Name() of class ara::tsync::TsyncErrorDomain returns a pointer to a constant character string that identifies the error domain [SWS_TS_00906]. The function requires the header file ara/tsync/tsync_error_domain.h, is called synchronously, and takes no parameters [SWS_TS_00906]. The type const char * is passed as the return value [SWS_TS_00906]. Interpretation: Since the return value is defined as a string constant, the memory area is likely to have static lifetime and must neither be modified nor freed by the caller. Question Q-f9cb9d4986d49755 (open)

Error Handling and Concurrency

The method is declared as noexcept and specified as exception-safe (\"exception safe\"), which guarantees that no exceptions are thrown [SWS_TS_00906]. Specific error codes, DET, or DEM messages do not exist for this call. Regarding concurrency behavior, the function is classified as thread-safe (\"thread-safe\") [SWS_TS_00906]. Consequently, the call can take place in parallel from multiple execution contexts without external synchronization.

Interaction and related requirements

With the designation override, the function overrides the standardized interface for domain naming in the module ts [SWS_TS_00906]. The same design pattern is implemented by the related error domain apext::tsync::TsyncFvmErrorDomain, whose function Name() from apext/tsync/fvm_error_domain.h likewise returns the associated identifier synchronously, thread-safely, and exception-safely [SWS_TS_14209].

This usage note was generated by an AI. All information is based exclusively on the specifications of Release R25-11.

Header-Datei#include "ara/tsync/tsync_error_domain.h"
Scopeclass ara::tsync::TsyncErrorDomain
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
const char *As per ara::tsync::TsyncErrorDomain in [SWS_CORE_ 90023]

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

Record
AUTOSAR/AP/record/SWS_TS_00906
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_00906@rel:R25-11#c1284f78
Content hash
c1284f78
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_00906
Status: valid/unmigrated Version: rel:R25-11#a90a2e3e 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_TS_00906@rel:R25-11#a90a2e3e
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#c1284f782026-09-30
  • R23-11rel:R23-11#54a3df7c2026-10-14
  • R24-11rel:R24-11#2c121e8a2026-10-14
  • R25-11rel:R25-11#a90a2e3e2026-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 ThrowAsException [SWS_TS_00908] Upstream: RS_AP_00120, RS_AP_00121, RS_AP_00130

void ThrowAsException (const ara::core::ErrorCode &errorCode) const noexcept(false) override;

Creates a new instance of TsyncException from errorCode and throws it as a C++ exception. As per SWS_CORE_10304 this function does not participate in overload resolution when C++ exceptions are disabled in the compiler toolchain.

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

use

From the passed parameter errorCode, the member function ThrowAsException of class ara::tsync::TsyncErrorDomain synchronously creates a new instance of TsyncException and throws it as a C++ exception ([SWS_TS_00908]). The function has no return value (void) and is provided via the header ara/tsync/tsync_error_domain.h.

Error Handling and Exception Safety

The method is declared with noexcept(false) and specified as not exception safe ([SWS_TS_00908]). Interpretation: This classification is probably based on the fact that the function throws an exception by design and thus leaves the regular control flow. Question Q-cde17219378516c1 (open) Specific error codes are not returned, but rather transported via the thrown exception object.

Concurrency and Limitations

The function is classified as thread-safe ([SWS_TS_00908]) and can thus be called safely from concurrent threads. An essential restriction concerns the toolchain: According to [SWS_CORE_10304], ThrowAsException does not participate in overload resolution if C++ exceptions are disabled in the compiler toolchain.

Interaction

The behavior corresponds to the uniform pattern for error domains in AUTOSAR Adaptive. A direct counterpart is found in apext::tsync::TsyncFvmErrorDomain ([SWS_TS_14211]), where ThrowAsException throws a apext::tsync::TsyncFvmException and is likewise subject to the specifications from [SWS_CORE_10304].

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

Implementer's Guide to follow (complexity I1)

Header-Datei#include "ara/tsync/tsync_error_domain.h"
Scopeclass ara::tsync::TsyncErrorDomain
Exception-Sicherheitnot exception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
errorCodeThe error to throw.

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_TS_00908
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_00908@rel:R25-11#b956a874
Content hash
b956a874
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_00908
Status: valid/unmigrated Version: rel:R25-11#627a4cdd 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_TS_00908@rel:R25-11#627a4cdd
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#b956a8742026-09-30
  • R23-11rel:R23-11#52fe73302026-10-14
  • R24-11rel:R24-11#627a4cdd2026-10-14
  • R25-11rel:R25-11#627a4cdd2026-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 TsyncErrorDomain [SWS_TS_00905] Upstream: RS_AP_00120, RS_AP_00130

TsyncErrorDomain () noexcept;

Constructs a new TsyncErrorDomain object.

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

use

The parameterless default constructor creates a new instance of the error domain ara::tsync::TsyncErrorDomain [SWS_TS_00905]. The declaration is provided via the header #include "ara/tsync/tsync_error_domain.h" [SWS_TS_00905]. Execution occurs synchronously, takes no input parameters, and throws no C++ exceptions (noexcept) [SWS_TS_00905].

Interaction and Error Handling

The created error domain serves to encapsulate and interpret synchronization-specific error states in the Time Synchronization module. Within the domain, the type aliases Errc for the error code enumeration TsyncErrc [SWS_TS_01266] and Exception for the exception base class TsyncException [SWS_TS_01267] are available. Instances of the class provide a constant name string of the domain via the method Name [SWS_TS_00906] and the textual error description for a specified error code via Message [SWS_TS_00907]. In addition, ThrowAsException allows creating and throwing a TsyncException based on a ara::core::ErrorCode, provided C++ exceptions are enabled in the compiler [SWS_TS_00908]. In typical application scenarios, custom instantiation via the constructor is likely to be rarely required, since a reference to the global instance object is already available via GetTsyncErrorDomain [SWS_TS_00909]. Question Q-8ebaff4e52125b78 (open)

Concurrency and Limitations

The call is specified as exception-safe (exception safe) and thread-safe (thread-safe) [SWS_TS_00905]. The instantiation can thus take place across threads without additional synchronization measures.

This usage note was generated automatically based on the specification.

Implementer's Guide to follow (complexity I1)

Header-Datei#include "ara/tsync/tsync_error_domain.h"
Scopeclass ara::tsync::TsyncErrorDomain
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

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

Record
AUTOSAR/AP/record/SWS_TS_00905
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_00905@rel:R25-11#fc141cdf
Content hash
fc141cdf
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_00905
Status: valid/unmigrated Version: rel:R25-11#db2535d3 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_TS_00905@rel:R25-11#db2535d3
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#fc141cdf2026-09-30
  • R23-11rel:R23-11#c63893f02026-10-14
  • R24-11rel:R24-11#db2535d32026-10-14
  • R25-11rel:R25-11#db2535d32026-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 documentation

type alias Errc [SWS_TS_01266] Upstream: RS_AP_00120, RS_AP_00130

using Errc = TsyncErrc;

Alias for the error code value enumeration

Header-Datei#include "ara/tsync/tsync_error_domain.h"
Scopeclass ara::tsync::TsyncErrorDomain
SymbolErrc

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

Record
AUTOSAR/AP/record/SWS_TS_01266
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_01266@rel:R25-11#079a906f
Content hash
079a906f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_01266
Status: valid/unmigrated Version: rel:R25-11#5f14392b 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_TS_01266@rel:R25-11#5f14392b
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#079a906f2026-09-30
  • R24-11rel:R24-11#5f14392b2026-10-14
  • R25-11rel:R25-11#5f14392b2026-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 Exception [SWS_TS_01267] Upstream: RS_AP_00120, RS_AP_00130

using Exception = TsyncException;

Alias for the exception base class

Header-Datei#include "ara/tsync/tsync_error_domain.h"
Scopeclass ara::tsync::TsyncErrorDomain
SymbolException

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

Record
AUTOSAR/AP/record/SWS_TS_01267
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_01267@rel:R25-11#857684a6
Content hash
857684a6
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_01267
Status: valid/unmigrated Version: rel:R25-11#1b160d53 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_TS_01267@rel:R25-11#1b160d53
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#857684a62026-09-30
  • R24-11rel:R24-11#1b160d532026-10-14
  • R25-11rel:R25-11#1b160d532026-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