DEENESPTFRRUARHIKOZHNL

namespace ara::tsync

User GuideKI-GENERIERT

Stellt standardisierte Schnittstellen für synchronisierte Zeitbasen, hochpräzise Zeitstempel und Statusüberwachung bereit.
KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: aa3b87a713ce Herkunft Offene Fragen (2)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Stellt standardisierte Schnittstellen für synchronisierte Zeitbasen, hochpräzise Zeitstempel und Statusüberwachung bereit.

Der Namespace ara::tsync stellt Schnittstellen für den synchronisierten Zeitzugriff auf der Adaptive Platform bereit, indem er Anwendungen über SynchronizedTimeBaseConsumer an konfigurierte Zeitbasen anbindet. Die Zeiterfassung erfolgt über hochpräzise Zeitstempel vom Typ Timestamp auf Basis einer Nanosekunden-Auflösung [SWS_TS_01251]. Anwendungen überwachen die Synchronität über Zustandsindikatoren wie SynchronizationStatus [SWS_TS_01050]. Als wesentliche Randbedingung sind die asynchronen Benachrichtigungs-Callbacks nicht thread-sicher ausgelegt und Verbindungsverluste zum Zeit-Daemon müssen behandelt werden.

Kontext

Der Namespace ara::tsync stellt innerhalb der AUTOSAR Adaptive Platform die Schnittstellen zur hochpräzisen Zeitsynchronisation bereit. Er ermöglicht Anwendungen das Auslesen synchronisierter Zeitpunkte, die Überwachung des Synchronisationszustands sowie die Protokollierung von Messwerten für Validierungszwecke. Die zentrale Rolle für konsumierende Applikationen nimmt die Klasse SynchronizedTimeBaseConsumer ein, die den Zugriff auf eine über einen InstanceSpecifier konfigurierte Zeitbasis kapselt. Auf Anbieterseite dient SynchronizedTimeBaseProvider als Zugriffspunkt zur Bereitstellung und Steuerung von Zeitbasen.

Grundlage der zeitlichen Repräsentation ist die Pseudo-Uhr TimeBase, über welche der Typalias Timestamp als std::chrono::time_point<TimeBase, std::chrono::nanoseconds> [SWS_TS_01251] definiert ist. Die eigentliche Synchronisationsarbeit und Anbindung an Busprotokolle wie IEEE 802.1AS oder PTP erfolgt typischerweise über einen Hintergrunddienst. Interpretation: Dieser Zeit-Daemon kommuniziert prozessübergreifend mit den Instanzen von ara::tsync, was sich durch den spezifischen Fehler TsyncErrc::kDaemonConnectionLost [SWS_TS_00901] belegen lässt. Frage Q-dd9d1a36f7573a03 (offen) Ergänzt wird die Architektur durch Schnittstellen wie ConsumerTimeBaseValidationNotification und ProviderTimeBaseValidationNotification sowie Datenstrukturen für Laufzeit- und Präzisionsmessungen (z. B. TimeMasterMeasurementType, TimeSlaveMeasurementType, PdelayInitiatorMeasurementType und PdelayResponderMeasurementType).

diag_tsync_context ConsumerApp Consumer-Anwendung Consumer SynchronizedTimeBaseConsumer ConsumerApp->Consumer nutzt ProviderApp Provider- / Validator-Anwendung Provider SynchronizedTimeBaseProvider ProviderApp->Provider nutzt TimeBase TimeBase (std::chrono Pseudo-Uhr) Consumer->TimeBase referenziert Daemon Time Sync Daemon Consumer->Daemon IPC / Synchronisation Provider->Daemon IPC / Bereitstellung

Kontextdiagramm: Zusammenspiel von Anwendungen, Schnittstellenklassen und Zeit-Daemon im Namespace ara::tsync. Quellen: [SWS_TS_00901], [SWS_TS_01251].

Lebenszyklus

Der Lebenszyklus einer synchronisierten Zeitbasis wird durch Zustandsstrukturen und diskrete Statuswechsel bestimmt. Eine Momentaufnahme des zeitlichen Zustands inklusive aller Metadaten wird durch SynchronizedTimeBaseStatus repräsentiert. Der Kommunikations- und Synchronisationszustand wird über die Enumeration SynchronizationStatus [SWS_TS_01050] gesteuert:

  • kNotSynchronizedUntilStartup: Ausgangszustand vor der ersten erfolgreichen Synchronisation nach Systemstart.
  • kSynchronized: Die Zeitbasis ist synchron mit dem Time-Master.
  • kSynchToGateway: Die Synchronisation erfolgt über ein Gateway.
  • kTimeOut: Innerhalb eines definierten Zeitfensters konnte keine Synchronisation hergestellt oder aufrechterhalten werden.

Neben dem Kommunikationsstatus erfasst die Enumeration LeapJump [SWS_TS_01051] sprunghafte Korrekturen der Zeitbasis: kTimeLeapNone signalisiert einen kontinuierlichen Lauf ohne Schwellenwertüberschreitung, während kTimeLeapFuture und kTimeLeapPast signifikante Korrekturen in die Zukunft bzw. Vergangenheit anzeigen.

Hinsichtlich der Nebenläufigkeit ist zu beachten, dass Callback-Typen wie SynchronizationNotifier [SWS_TS_14222], SynchronizedTimeBaseNotifier [SWS_TS_14221] und TimePrecisionNotifier [SWS_TS_14223] spezifikationsgemäß als nicht thread-sicher eingestuft sind. Zustandsübergänge, insbesondere das Auftreten von Timeouts oder Re-Synchronisationen, erfordern daher eine anwendungsseitige Synchronisation.

diag_sync_status init kNotSynchronizedUntilStartup kNotSynchronizedUntilStartup (Initialzustand) init->kNotSynchronizedUntilStartup kSynchronized kSynchronized (Time Master) kNotSynchronizedUntilStartup->kSynchronized Sync mit Master kSynchToGateway kSynchToGateway (Gateway) kNotSynchronizedUntilStartup->kSynchToGateway Sync mit Gateway kTimeOut kTimeOut (Timeout) kNotSynchronizedUntilStartup->kTimeOut Zeitfenster abgelaufen kSynchronized->kTimeOut Sync-Verlust kSynchToGateway->kTimeOut Sync-Verlust kTimeOut->kSynchronized Re-Synchronisation kTimeOut->kSynchToGateway Re-Synchronisation

Zustandsdiagramm: Lebenszyklus und Kommunikationszustände einer synchronisierten Zeitbasis. Quellen: [SWS_TS_01050].

Nutzungspfad

Der typische Ablauf zur Nutzung einer synchronisierten Zeitbasis durch eine Konsumenten-Anwendung gliedert sich in folgende Schritte:

  1. Initialisierung und Bindung: Die Anwendung instanziiert SynchronizedTimeBaseConsumer für die gewünschte Zeitbasis unter Angabe des passenden InstanceSpecifier.
  2. Registrierung von Benachrichtigungen: Zur Überwachung des Synchronisationszustands übergibt die Anwendung Rückruffunktionen. Dazu zählen SynchronizationNotifier [SWS_TS_14222] für Änderungen des SynchronizationStatus, SynchronizedTimeBaseNotifier [SWS_TS_14221] für detaillierte Status-Snapshots (SynchronizedTimeBaseStatus) sowie TimePrecisionNotifier [SWS_TS_14223] für Präzisionsmessdaten (TimePrecisionMeasurement).
  3. Zeitstempelabfrage: Bei vorliegendem Zustand kSynchronized oder kSynchToGateway [SWS_TS_01050] liest die Anwendung hochpräzise Zeitwerte vom Typ Timestamp [SWS_TS_01251] aus.
  4. Reaktion auf Status- und Zeitsprünge: Signalisieren Benachrichtigungen einen LeapJump ungleich kTimeLeapNone [SWS_TS_01051] oder einen Übergang in kTimeOut [SWS_TS_01050], passt die Applikation interne Zeitgeber an oder geht in einen Degradationsmodus über.
  5. Übertragung von Benutzerdaten: Werden anwenderspezifische Nutzdaten im Rahmen der Zeitsynchronisation übertragen, kommt die Struktur UserData zum Einsatz.

Fehlerszenarien

Die Fehlerbehandlung des Namespace folgt dem AUTOSAR-Standardmodell über die Fehlerdomäne TsyncErrorDomain. Der Zugriff auf diese globale Domäne erfolgt über GetTsyncErrorDomain() [SWS_TS_00909]. Fehlerursachen werden durch den Enumerationstyp TsyncErrc [SWS_TS_00901] beschrieben:

  • kDaemonConnectionLost: Die angeforderte Operation schlägt fehl, da die Verbindung zum Time-Sync-Daemon unterbrochen ist.
  • kLimitsExceeded: Ein übergebener oder berechneter Wert liegt außerhalb des zulässigen Wertebereichs.
  • kFunctionNotSupported: Die angeforderte Funktion wird in der aktuellen Konfiguration oder Plattformumgebung nicht unterstützt.
  • kInvalidUserDataSize: Die Länge der übergebenen Benutzerdaten überschreitet das durch UserData::kMaxUserDataSize definierte Maximum von derzeit 3 Bytes.

Instanzen von ara::core::ErrorCode werden über die Hilfsfunktion MakeErrorCode [SWS_TS_00910] erzeugt. Die Funktion ist als noexcept deklariert und thread-sicher. Für Ausnahme-basierte Architekturen stellt der Namespace die Ausnahmeklasse TsyncException bereit.

Dieser Leitfaden basiert auf der Spezifikation AUTOSAR Adaptive Platform R25-11 für das Modul tsync.

Themenkarte

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

Klassendiagramm

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::tsync nara__tsync__ConsumerTimeBaseValidationNotification ConsumerTimeBaseValidationNotification nara__tsync__PdelayInitiatorMeasurementType «struct» PdelayInitiatorMeasurementType nara__tsync__PdelayResponderMeasurementType «struct» PdelayResponderMeasurementType nara__tsync__ProviderTimeBaseValidationNotification ProviderTimeBaseValidationNotification nara__tsync__SynchronizedTimeBaseConsumer SynchronizedTimeBaseConsumer nara__tsync__SynchronizedTimeBaseProvider SynchronizedTimeBaseProvider nara__tsync__SynchronizedTimeBaseStatus SynchronizedTimeBaseStatus nara__tsync__TimeBase «struct» TimeBase nara__tsync__TimeMasterMeasurementType «struct» TimeMasterMeasurementType nara__tsync__TimePrecisionMeasurement «struct» TimePrecisionMeasurement nara__tsync__TimeSlaveMeasurementType «struct» TimeSlaveMeasurementType nara__tsync__TsyncErrorDomain TsyncErrorDomain next_ara__core__ErrorDomain ara::core::ErrorDomain nara__tsync__TsyncErrorDomain->next_ara__core__ErrorDomain nara__tsync__TsyncException TsyncException next_ara__core__Exception ara::core::Exception nara__tsync__TsyncException->next_ara__core__Exception nara__tsync__UserData «struct» UserData

Detailansicht

Wähle in der Gliederung einen Eintrag aus.

Zeitbasen

Class SynchronizedTimeBaseConsumer is the access to the synchronized timebase referenced by the InstanceSpecifier

Class SynchronizedTimeBaseProvider is the access to the synchronized timebase referenced by the IntstanceSpecifier

This class represents a snapshot of a time point including his states

TimeBase class

The class TimeBase is a pseudo-clock

UserData class

Structure to define user data

Timestamp type alias

Standard timestamp type as alias of a generic time_point .

Synchronisationsstatus

LeapJump enumeration

Enumeration that is used to express the leap jump of a time base. .

enum class LeapJump : std::uint32_t {...};

Enumeration that is used to express the communication state of a time base. .

enum class SynchronizationStatus : std::uint32_t {...};

Statusmeldungen

Callback interface to notify Consumer Application about the availability of a new data block recorded for the Time Base

Callback interface to notify (Validator) Application about the availability of a new data block recorded for the Time Base

Notifier function .

using SynchronizationNotifier = std::function<void(const SynchronizationStatus&)>;

Notifier function .

using SynchronizedTimeBaseNotifier = std::function<void(const SynchronizedTimeBaseStatus&)>;

Notifier function .

using TimePrecisionNotifier = std::function<void(const TimePrecision Measurement&)>;

Zeitmessung

Structure with detailed timing data for the pDelay Initiator .

Structure with detailed timing data for the pDelay Responder .

Structure with detailed data for validation of the Time Master .

Structure with detailed data for precision measurement of the Time Slave .

Structure with detailed data for validation of the Time Slave .

Fehlerbehandlung

Defines a class representing the Time Synchronization error domain.

erbt von ara::core::ErrorDomain

Defines a class for exceptions to be thrown by the Time Synchronization.

erbt von ara::core::Exception

Returns a reference to the global TsyncErrorDomain object.

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

Creates an instance of ErrorCode.

TsyncErrc enumeration

Defines an enumeration class for the Time Synchronization error codes.

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

Enumerationen

enumeration LeapJump [SWS_TS_01051] Upstream: RS_TS_00009 Wortlaut noch nicht übernommen

enum class LeapJump :          std::uint32_t {...};

Enumeration that is used to express the leap jump of a time base. .

Header-Datei#include "ara/tsync/synchronized_time_base_status.h"
Forwarding-Header#include "ara/tsync/tsync_fwd.h"
Scopenamespace ara::tsync
SymbolLeapJump
Basistypstd::uint32_t

Werte

EnumeratorBeschreibung
kTimeLeapNone=0 No adjustment back or greater than a certain threshold has been made.
kTimeLeapFuture=1 An adjustment greater than a certain threshold has been made.
kTimeLeapPast=2 An adjustment back in time greater than a certain threshold has been made.

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

Record
AUTOSAR/AP/record/SWS_TS_01051
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_01051@rel:R25-11#0f3ec553
Content hash
0f3ec553
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_01051
Status: valid/unmigrated Version: rel:R25-11#d1e183ad 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_TS_01051@rel:R25-11#d1e183ad
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#0f3ec5532026-09-30
  • R20-11rel:R20-11#5e4e15cc2026-10-14
  • R21-11rel:R21-11#5e4e15cc2026-10-14
  • R22-11rel:R22-11#5e4e15cc2026-10-14
  • R23-11rel:R23-11#8dcaedd02026-10-14
  • R24-11rel:R24-11#8dcaedd02026-10-14
  • R25-11rel:R25-11#d1e183ad2026-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 SynchronizationStatus [SWS_TS_01050] Upstream: RS_TS_00009 Wortlaut noch nicht übernommen

enum class SynchronizationStatus :               std::uint32_t {...};

Enumeration that is used to express the communication state of a time base. .

Header-Datei#include "ara/tsync/synchronized_time_base_status.h"
Forwarding-Header#include "ara/tsync/tsync_fwd.h"
Scopenamespace ara::tsync
SymbolSynchronizationStatus
Basistypstd::uint32_t

Werte

EnumeratorBeschreibung
kNotSynchronizedUntilStartup=0 The TB is not synchronized until startup (inital state)
kTimeOut= 0x1 The TB was not synchronized within a certain time frame.
kSynchronized= 0x2 The TB is in sync with the time master.
kSynchToGateway= 0x3 The TB is in sync with the gateway.
KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 2b617e90b13f Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die Enumeration SynchronizationStatus drückt den Kommunikations- und Synchronisationsstatus einer Zeitbasis im Namensraum ara::tsync aus [SWS_TS_01050]. Der Typ basiert auf std::uint32_t und wird über die Header-Datei ara/tsync/synchronized_time_base_status.h sowie den Forwarding-Header ara/tsync/tsync_fwd.h bereitgestellt [SWS_TS_01050]. Die Enumeration definiert vier Zustände:

  • kNotSynchronizedUntilStartup (= 0): Die Zeitbasis ist vor dem Systemstart nicht synchronisiert (Initialzustand) [SWS_TS_01050].
  • kTimeOut (= 0x1): Die Zeitbasis wurde innerhalb eines vorgegebenen Zeitfensters nicht synchronisiert [SWS_TS_01050].
  • kSynchronized (= 0x2): Die Zeitbasis ist synchron mit dem Time-Master [SWS_TS_01050].
  • kSynchToGateway (= 0x3): Die Zeitbasis ist synchron mit dem Gateway [SWS_TS_01050].

Der synchrone Abruf des Status erfolgt über die Methode GetSynchronizationStatus() der Klasse ara::tsync::SynchronizedTimeBaseStatus, welche den Zustand zum Erstellungszeitpunkt des Status-Objekts threadsicher und ausnahmesicher (noexcept) liefert [SWS_TS_01053]. Für Benachrichtigungen bei Statusänderungen existiert in ara/tsync/synchronized_time_base_consumer.h der Typalias SynchronizationNotifier (std::function<void(const SynchronizationStatus &)>), der explizit als nicht threadsicher spezifiziert ist [SWS_TS_14222].

Im Fehlerfall bzw. bei fehlender Synchronisation ist das Verhalten verknüpfter Methoden zu beachten: Wurde die Zeitbasis noch nie synchronisiert und weist den Status kNotSynchronizedUntilStartup auf, liefert die Methode GetCreationTime() ein leeres ara::core::Optional zurück, da kein gültiger Erstellungszeitpunkt in synchronisierter Zeit vorliegt [SWS_TS_01055].

Dieser Text wurde durch ein KI-System generiert und stützt sich ausschließlich auf die Spezifikationsdaten aus AUTOSAR R25-11.

Implementer's Guide folgt (Komplexität I1)

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

Record
AUTOSAR/AP/record/SWS_TS_01050
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_01050@rel:R25-11#b39bcd9d
Content hash
b39bcd9d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_01050
Status: valid/unmigrated Version: rel:R25-11#f7498bf9 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_TS_01050@rel:R25-11#f7498bf9
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#b39bcd9d2026-09-30
  • R20-11rel:R20-11#7601b2582026-10-14
  • R21-11rel:R21-11#c9689b3f2026-10-14
  • R22-11rel:R22-11#c9689b3f2026-10-14
  • R23-11rel:R23-11#1e604bb62026-10-14
  • R24-11rel:R24-11#5b49085a2026-10-14
  • R25-11rel:R25-11#f7498bf92026-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 TsyncErrc [SWS_TS_00901] Upstream: RS_AP_00130, RS_AP_00122, RS_AP_00127, RS_AP_00154

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

Defines an enumeration class for the Time Synchronization error codes.

Header-Datei#include "ara/tsync/tsync_error_domain.h"
Forwarding-Header#include "ara/tsync/tsync_fwd.h"
Scopenamespace ara::tsync
SymbolTsyncErrc
Basistypara::core::ErrorDomain::CodeType

Werte

EnumeratorBeschreibung
kDaemonConnectionLost=1 The action cannot be executed, because the connection to time sync daemon is currently lost.
kLimitsExceeded=2 The value exceeds valid value range
kFunctionNotSupported=3 The requested function is not supported
kInvalidUserDataSize=4 The length of the user data exceeded the maximum allowed size, defined by UserData::kMaxUserDataSize (currently 3 bytes).
KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: bf6ea0154525 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die Enumeration TsyncErrc definiert die standardisierten Fehlercodes des Funktionsclusters Time Synchronization [SWS_TS_00901]. Sie basiert auf ara::core::ErrorDomain::CodeType und wird innerhalb des Namespace ara::tsync deklariert; über ara::tsync::TsyncErrorDomain::Errc steht zudem ein Alias bereit [SWS_TS_01266]. Zur Erzeugung vollständiger Fehlerobjekte dient die thread-sichere Funktion MakeErrorCode, welche einen TsyncErrc-Wert mit herstellerspezifischen Zusatzdaten zu einem ara::core::ErrorCode verknüpft [SWS_TS_00910].

Die Spezifikation definiert vier konkrete Fehlerwerte [SWS_TS_00901]:

  • kDaemonConnectionLost (=1): Die Aktion kann nicht ausgeführt werden, da die Verbindung zum Time-Sync-Daemon unterbrochen ist.
  • kLimitsExceeded (=2): Ein übergebener Parameter überschreitet den zulässigen Wertebereich. Dies tritt beispielsweise bei SetRateCorrection auf, wenn die angeforderte Ratenkorrektur ungültig ist [SWS_TS_01110].
  • kFunctionNotSupported (=3): Die angeforderte Funktion wird nicht unterstützt. Interpretation: Dies dürfte Implementierungen betreffen, bei denen optionale Hardware- oder Schnittstellenfunktionen nicht verfügbar sind. Frage Q-e22067d84fd6adb4 (offen)
  • kInvalidUserDataSize (=4): Die Länge der Nutzdaten überschreitet die durch UserData::kMaxUserDataSize vorgegebene Maximalgröße von 3 Bytes. Dieser Fehler tritt bei SetTime [SWS_TS_01107] sowie SetUserData [SWS_TS_01112] auf.

Methoden zur Zeit- und Datenaktualisierung wie SetTime, UpdateTime, SetRateCorrection und SetUserData der Klasse ara::tsync::SynchronizedTimeBaseProvider liefern Ergebnisse synchron über ara::core::Result<void> zurück und sind als nicht-threadsicher spezifiziert [SWS_TS_01107] [SWS_TS_01108] [SWS_TS_01110] [SWS_TS_01112]. Im Fehlerfall greift laut Spezifikation keine Rollback-Semantik (no_rollback_semantics) [SWS_TS_01107] [SWS_TS_01110] [SWS_TS_01112].

Dieser Text wurde von einer KI erstellt und basiert auf dem Spezifikationsstand R25-11.

Implementer's Guide folgt (Komplexität I1)

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

Record
AUTOSAR/AP/record/SWS_TS_00901
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_00901@rel:R25-11#e7de222a
Content hash
e7de222a
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_00901
Status: valid/unmigrated Version: rel:R25-11#9d3829f4 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_00901@rel:R25-11#9d3829f4
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#e7de222a2026-09-30
  • R23-11rel:R23-11#7a766fcd2026-10-14
  • R24-11rel:R24-11#4086ebd92026-10-14
  • R25-11rel:R25-11#9d3829f42026-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

Typaliase

type alias SynchronizationNotifier [SWS_TS_14222] Upstream: RS_TS_00034 Wortlaut noch nicht übernommen

using SynchronizationNotifier = std::function<void(const SynchronizationStatus&)>;

Notifier function .

Header-Datei#include "ara/tsync/synchronized_time_base_consumer.h"
Scopenamespace ara::tsync
SymbolSynchronizationNotifier
Thread-Sicherheitnot thread-safe

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

Record
AUTOSAR/AP/record/SWS_TS_14222
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_14222@rel:R25-11#cf8d66fe
Content hash
cf8d66fe
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_14222
Status: valid/unmigrated Version: rel:R25-11#cf8d66fe Versionshistorie & Revisions (1 transition)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_TS_14222@rel:R25-11#cf8d66fe
Point-in-Time History:
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

type alias SynchronizedTimeBaseNotifier [SWS_TS_14221] Upstream: RS_TS_00034 Wortlaut noch nicht übernommen

using SynchronizedTimeBaseNotifier = std::function<void(const SynchronizedTimeBaseStatus&)>;

Notifier function .

Header-Datei#include "ara/tsync/synchronized_time_base_consumer.h"
Scopenamespace ara::tsync
SymbolSynchronizedTimeBaseNotifier
Thread-Sicherheitnot thread-safe

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

Record
AUTOSAR/AP/record/SWS_TS_14221
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_14221@rel:R25-11#e5ecbd11
Content hash
e5ecbd11
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_14221
Status: valid/unmigrated Version: rel:R25-11#e5ecbd11 Versionshistorie & Revisions (1 transition)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_TS_14221@rel:R25-11#e5ecbd11
Point-in-Time History:
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

type alias TimePrecisionNotifier [SWS_TS_14223] Upstream: RS_TS_00034 Wortlaut noch nicht übernommen

using TimePrecisionNotifier = std::function<void(const TimePrecision Measurement&)>;

Notifier function .

Header-Datei#include "ara/tsync/synchronized_time_base_consumer.h"
Scopenamespace ara::tsync
SymbolTimePrecisionNotifier
Thread-Sicherheitnot thread-safe

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

Record
AUTOSAR/AP/record/SWS_TS_14223
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_14223@rel:R25-11#080bdbbd
Content hash
080bdbbd
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_14223
Status: valid/unmigrated Version: rel:R25-11#080bdbbd Versionshistorie & Revisions (1 transition)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_TS_14223@rel:R25-11#080bdbbd
Point-in-Time History:
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

type alias Timestamp [SWS_TS_01251] Upstream: RS_AP_00130, RS_TS_00005 Wortlaut noch nicht übernommen

using Timestamp = std::chrono::time_point<TimeBase, std::chrono::nanoseconds>;

Standard timestamp type as alias of a generic time_point .

Header-Datei#include "ara/tsync/timestamp.h"
Scopenamespace ara::tsync
SymbolTimestamp

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

Record
AUTOSAR/AP/record/SWS_TS_01251
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_01251@rel:R25-11#106ad11b
Content hash
106ad11b
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_01251
Status: valid/unmigrated Version: rel:R25-11#c65db4b9 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_TS_01251@rel:R25-11#c65db4b9
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#106ad11b2026-09-30
  • R20-11rel:R20-11#1c46dc512026-10-14
  • R21-11rel:R21-11#1c46dc512026-10-14
  • R22-11rel:R22-11#0b7701762026-10-14
  • R23-11rel:R23-11#c65db4b92026-10-14
  • R24-11rel:R24-11#c65db4b92026-10-14
  • R25-11rel:R25-11#c65db4b92026-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

Dokumentation der freien Funktionen

function GetTsyncErrorDomain [SWS_TS_00909] Upstream: RS_AP_00120, RS_AP_00130, RS_AP_00154

const ara::core::ErrorDomain & GetTsyncErrorDomain () noexcept;

Returns a reference to the global TsyncErrorDomain object.

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

Verwendung

Die synchrone Funktion GetTsyncErrorDomain gehört zum Namensraum ara::tsync und wird über die Header-Datei ara/tsync/tsync_error_domain.h eingebunden [SWS_TS_00909]. Der Aufruf erfolgt parameterlos und dient dem Zweck, eine Referenz auf das globale TsyncErrorDomain-Objekt der Zeitsynchronisation abzurufen [SWS_TS_00909].

Als Rückgabewert liefert die Funktion eine konstante Referenz auf dieses globale Fehlerdomänen-Objekt vom Typ const ara::core::ErrorDomain & [SWS_TS_00909]. Interpretation: Die bereitgestellte Instanz dürfte im Fehlerbehandlungskonzept von AUTOSAR Adaptive als Bezugspunkt dienen, um modulspezifische Fehlercodes aus dem Bereich der Zeitsynchronisation zu identifizieren, zuzuordnen oder mit anderen Fehlerdomänen zu vergleichen. Frage Q-cf1fce412576bca3 (offen)

Fehlerbehandlung und Exception-Sicherheit

Die Funktionssignatur ist explizit als noexcept deklariert und als ausnahmesicher (exception safe) spezifiziert [SWS_TS_00909]. Das bedeutet, dass während der Ausführung keine Ausnahmen geworfen werden können. Da die Funktion lediglich den Verweis auf das bereits existierende globale Domänenobjekt zurückgibt, treten keine internen Fehlerzustände auf, und es existieren weder spezifische Fehlercodes noch Fehlermeldungen für den Aufruf [SWS_TS_00909].

Nebenläufigkeit und Einschränkungen

Gemäß Spezifikation ist GetTsyncErrorDomain als threadsicher (thread-safe) eingestuft [SWS_TS_00909]. Aufrufe können somit parallel aus unterschiedlichen Threads ohne vorherige Synchronisation oder Sperrmechanismen durchgeführt werden. Besondere Reihenfolgebedingungen oder Vorbedingungen für den Aufruf bestehen laut Spezifikation nicht [SWS_TS_00909].

Dieser Text wurde von einer KI erstellt und basiert auf AUTOSAR-Spezifikationen.

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

Rückgabewert

TypBeschreibung
const ara::core::ErrorDomain &Return a reference to the global TsyncErrorDomain object.

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

Record
AUTOSAR/AP/record/SWS_TS_00909
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_00909@rel:R25-11#9607cbbd
Content hash
9607cbbd
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_00909
Status: valid/unmigrated Version: rel:R25-11#a57021f4 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_00909@rel:R25-11#a57021f4
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#9607cbbd2026-09-30
  • R23-11rel:R23-11#cff138772026-10-14
  • R24-11rel:R24-11#ea375f2a2026-10-14
  • R25-11rel:R25-11#a57021f42026-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_TS_00910] Upstream: RS_AP_00120, RS_AP_00121, RS_AP_00130, RS_AP_00154

ara::core::ErrorCode MakeErrorCode (ara::tsync::TsyncErrc code, ara::core::ErrorDomain::SupportDataType data) noexcept;

Creates an instance of ErrorCode.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: ad8052caa2c8 Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die Funktion MakeErrorCode dient der synchronen Erstellung eines ara::core::ErrorCode-Objekts für die Fehlerdomäne der Zeitsynchronisation im Namespace ara::tsync [SWS_TS_00910]. Sie ist über den Header ara/tsync/tsync_error_domain.h verfügbar und überführt Fehlernummern der Zeitsynchronisation in das standardisierte Fehlerbehandlungsmodell von AUTOSAR Adaptive.

Parameter und Rückgabewert

  • code (ara::tsync::TsyncErrc): Bezeichnet die spezifische Fehlernummer der Domäne [SWS_TS_00910].
  • data (ara::core::ErrorDomain::SupportDataType): Übergibt herstellerspezifische Zusatzdaten zum aufgetretenen Fehler [SWS_TS_00910].
  • Rückgabewert: Liefert ein initialisiertes ara::core::ErrorCode-Objekt zurück [SWS_TS_00910].

Nebenläufigkeit und Ausführungssicherheit

Die Funktion ist mit noexcept deklariert und als Exception-sicher eingestuft [SWS_TS_00910]; sie wirft zur Laufzeit keine Ausnahmen. Zudem ist die Implementierung als thread-safe spezifiziert [SWS_TS_00910], weshalb sie ohne zusätzliche Synchronisationsmaßnahmen parallel aus mehreren Threads heraus aufgerufen werden darf.

Zusammenspiel

Ergänzend zu dieser Basisfunktion spezifiziert die verwandte Anforderung [SWS_TS_14213] eine analoge Überladung für TsyncFvmErrc im Namespace apext::tsync (Header apext/tsync/fvm_error_domain.h), die als constexpr definiert ist.

Dieser Text wurde von einer KI auf Basis der Spezifikation AUTOSAR R25-11 generiert.

Implementer's Guide folgt (Komplexität I1)

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

Parameter (in)

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

Rückgabewert

TypBeschreibung
ara::core::ErrorCodeAn ErrorCode object.

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

Record
AUTOSAR/AP/record/SWS_TS_00910
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_00910@rel:R25-11#11d4fda3
Content hash
11d4fda3
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_00910
Status: valid/unmigrated Version: rel:R25-11#2ab21bd3 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_00910@rel:R25-11#2ab21bd3
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#11d4fda32026-09-30
  • R23-11rel:R23-11#ae1573d92026-10-14
  • R24-11rel:R24-11#1427f2f12026-10-14
  • R25-11rel:R25-11#2ab21bd32026-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