DEENESPTFRRUARHIKOZHNL

struct ara::tsync::TimeBase

[SWS_TS_01260] Upstream: RS_AP_00130, RS_TS_00005 Wortlaut noch nicht übernommen

struct TimeBase {...};

The class TimeBase is a pseudo-clock. The class TimeBase is a pseudo-clock that is used as the first template argument to std::chrono::time_point to indicate that the time point represents local time with respect of a not-yet-specified timeBaseResource.

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

User GuideKI-GENERIERT

Dient als Pseudo-Clock für std::chrono::time_point zur Abbildung lokaler Zeitpunkte einer Zeitbasis-Ressource.
KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: f515350f98f7 Herkunft Offene Fragen (3)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Dient als Pseudo-Clock für std::chrono::time_point zur Abbildung lokaler Zeitpunkte einer Zeitbasis-Ressource.

Die Klasse ara::tsync::TimeBase fungiert als Pseudo-Clock im C++-Standardbibliothekssystem und dient als Clock-Template-Argument für std::chrono::time_point zur Repräsentation lokaler Zeiten bezüglich einer Zeitbasis-Ressource [SWS_TS_01264]. Zur Erfüllung der Clock-Anforderungen stellt sie standardisierte Typ-Aliase für Nanosekunden-Auflösung und Dauer bereit. Als maßgebliche Randbedingung ist die Uhr über is_steady = false als nicht-monoton spezifiziert, wodurch Zeitsprünge infolge von Synchronisationsvorgängen berücksichtigt werden [SWS_TS_01265].

Kontext

Die Klasse bzw. Struktur ara::tsync::TimeBase übernimmt im Modul tsync der AUTOSAR Adaptive Platform die Rolle einer Pseudo-Uhr (Pseudo-Clock). Sie dient auf C++-Ebene primär als erstes Template-Argument für std::chrono::time_point, um semantisch festzulegen, dass ein Zeitstempel die lokale Zeit im Verhältnis zu einer noch nicht näher spezifizierten Zeitbasis-Ressource (timeBaseResource) darstellt [SWS_TS_01264]. Anstatt selbst als aktive Zeitquelle mit einer statischen Zeitabfrage zu agieren, fungiert TimeBase als formales Bindeglied innerhalb der Standardbibliothek std::chrono.

Durch die Bereitstellung der standardisierten Typdefinitionen bindet TimeBase die generischen Mechanismen der C++-Zeitmessung an das Synchronisationsmodul an. Konsumenten und Komponenten, die mit Zeitpunkten oder Zeiträumen arbeiten, nutzen die Alias-Typen der Struktur, um typisierte Zeitstempel auszutauschen. Auf diese Weise wird garantiert, dass Zeitwerte über std::chrono::time_point eindeutig einer lokalen Zeitbasis zugeordnet sind und nicht fälschlicherweise mit absoluten Systemuhren oder abweichenden Zeitquellen vermischt werden.

TimeBaseKontext time_point std::chrono::time_point<TimeBase> TimeBase ara::tsync::TimeBase (Pseudo-Clock) TimeBase->time_point dient als Typ-Argument timeBaseResource timeBaseResource (lokale Zeitbasis) timeBaseResource->TimeBase Referenz fuer lokale Zeit Anwendung Anwendungssoftware Anwendung->time_point nutzt

Kontextdiagramm: Einbettung von TimeBase als Pseudo-Clock in das C++-Chrono-Typsystem zur Bindung von Zeitpunkten an eine Zeitbasis-Ressource. Quellen: [SWS_TS_01263], [SWS_TS_01264]

Lebenszyklus

Als reine Daten- und Typstruktur (deklariert als struct TimeBase im Header ara/tsync/timestamp.h) besitzt ara::tsync::TimeBase keine dynamischen Lebenszyklusphasen im Sinne einer initialisierten oder betriebenen Laufzeitkomponente. Eine Instanziierung von Objekten dieser Struktur ist für die vorgesehene Funktion nicht zwingend erforderlich; sie existiert primär auf der Ebene des C++-Typsystems zur Compile-Zeit.

Zur Erfüllung der formalen Anforderungen an eine C++-Clock (C++ Clock Requirements) definiert TimeBase alle geforderten Typ-Aliase und Konstanten. Hierzu zählt der fundamentale Zählertyp rep als std::int64_t zur Repräsentation der Anzahl von Zeitticks [SWS_TS_01261] sowie das Zeittick-Intervall period als std::nano [SWS_TS_01262], was einer Auflösung im Nanosekundenbereich entspricht. Die Dauer zur Messung der Zeit seit einer Epoche wird über den Typalias duration als std::chrono::duration<rep, period> bereitgestellt [SWS_TS_01263].

Hinsichtlich der Nebenläufigkeit und des Verhaltens im laufenden System deklariert die Struktur die statische Konstante is_steady mit dem booleschen Wert false [SWS_TS_01265]. Dies signalisiert dem C++-Chrono-Framework, dass die zugrundeliegende Uhr nicht monoton (steady) ist. Interpretation: Dies dürfte darauf zurückzuführen sein, dass Zeitsynchronisationsvorgänge im Modul tsync Anpassungen oder Sprünge der lokalen Zeitbasis bewirken können, weshalb aufeinanderfolgende Messungen keine strenge Monotonie garantieren. Frage Q-93a56c0eb2d35c7b (offen) Da die Struktur selbst keinen veränderlichen Zustand kapselt, sind sämtliche Typverwendungen und Zugriffe auf Konstanten inhärent nebenläufigkeitssicher.

Nutzungspfad

Der typische Nutzungspfad von ara::tsync::TimeBase liegt in der Deklaration, Verarbeitung und Weitergabe von Zeitwerten innerhalb synchronisierter Anwendungen. Entwickler und adaptive Softwarekomponenten instanziieren nicht die Uhr selbst, sondern greifen auf den zentralen Typalias time_point zu, der als std::chrono::time_point<TimeBase> definiert ist [SWS_TS_01264].

  • Typdefinition und Schnittstellenspezifikation: Die Anwendung bindet den Header ara/tsync/timestamp.h ein und verwendet ara::tsync::TimeBase::time_point [SWS_TS_01264], um Signaturen für Zeitstempel zu deklarieren. Interpretation: Dadurch wird sichergestellt, dass Zeitpunkte semantisch an die spezifische lokale Zeitbasis gekoppelt bleiben. Frage Q-549e2d377c0a6845 (offen)
  • Arithmetik und Differenzbildung: Werden zwei Zeitpunkte voneinander subtrahiert, liefert der Ausdruck automatisch den Typ ara::tsync::TimeBase::duration [SWS_TS_01263]. Dieser basiert auf Nanosekundenschritten (period) [SWS_TS_01262] und 64-Bit-Ganzzahlen (rep) [SWS_TS_01261], womit standardkonforme Dauerberechnungen und Konvertierungen in andere Zeiteinheiten möglich sind.
  • Interoperabilität mit Standardalgorithmen: Durch die vollständige Erfüllung der Clock-Typanforderungen können Zeitpunkte und Zeitspannen nahtlos an Standardbibliotheksfunktionen von std::chrono übergeben werden, ohne dass proprietäre Zeitstrukturen verwendet werden müssen.

Interpretation: Da TimeBase als Pseudo-Clock konzipiert ist, stellt sie selbst keine statische Memberfunktion now() bereit; die konkrete Zeitwertermittlung für einen solchen time_point [SWS_TS_01264] dürfte durch andere Dienste oder Schnittstellen des Moduls tsync erfolgen, die an die referenzierte timeBaseResource angebunden sind. Frage Q-2a528a99023dad41 (offen)

Dieser Leitfaden basiert auf der Spezifikation AUTOSAR Adaptive Platform R25-11.

Mitgliederkarte

Klassendiagramm

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

G nara__tsync__TimeBase940 «struct» TimeBase + is_steady

Detailansicht

Wähle in der Gliederung einen Eintrag aus.

Typaliase

duration type alias

required type declaration to fulfill the C++ Clock requirements used to measure the time since epoch

using duration = std::chrono::duration<rep, period>;
period type alias

required type declaration to fulfill the C++ Clock requirements representing the tick period of the duration

using period = std::nano;
rep type alias

required type declaration to fulfill the C++ Clock requirements representing the number of ticks

using rep = std::int64_t;
time_point type alias

represents a point in time

using time_point = std::chrono::time_point<TimeBase>;

Konstanten

is_steady variable

required constant to fulfill the C++ Clock requirements as steady clock

static constexpr bool is_steady = false;

Dokumentation der Typaliase

type alias duration [SWS_TS_01263] Upstream: RS_AP_00130, RS_TS_00005 Wortlaut noch nicht übernommen

using duration = std::chrono::duration<rep, period>;

required type declaration to fulfill the C++ Clock requirements used to measure the time since epoch

Header-Datei#include "ara/tsync/timestamp.h"
Scopestruct ara::tsync::TimeBase
Symbolduration

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

Record
AUTOSAR/AP/record/SWS_TS_01263
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_01263@rel:R25-11#77b32a12
Content hash
77b32a12
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_01263
Status: valid/unmigrated Version: rel:R25-11#5cf6241f 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_TS_01263@rel:R25-11#5cf6241f
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#77b32a122026-09-30
  • R21-11rel:R21-11#aef3c9f02026-10-14
  • R22-11rel:R22-11#279628e32026-10-14
  • R23-11rel:R23-11#7904d5812026-10-14
  • R24-11rel:R24-11#5cf6241f2026-10-14
  • R25-11rel:R25-11#5cf6241f2026-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 period [SWS_TS_01262] Upstream: RS_AP_00130, RS_TS_00005 Wortlaut noch nicht übernommen

using period = std::nano;

required type declaration to fulfill the C++ Clock requirements representing the tick period of the duration

Header-Datei#include "ara/tsync/timestamp.h"
Scopestruct ara::tsync::TimeBase
Symbolperiod

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

Record
AUTOSAR/AP/record/SWS_TS_01262
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_01262@rel:R25-11#80c2628e
Content hash
80c2628e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_01262
Status: valid/unmigrated Version: rel:R25-11#d2f30081 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_TS_01262@rel:R25-11#d2f30081
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#80c2628e2026-09-30
  • R21-11rel:R21-11#f7e53bcc2026-10-14
  • R22-11rel:R22-11#4294ebea2026-10-14
  • R23-11rel:R23-11#b0d1dd9c2026-10-14
  • R24-11rel:R24-11#d2f300812026-10-14
  • R25-11rel:R25-11#d2f300812026-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 rep [SWS_TS_01261] Upstream: RS_AP_00130, RS_TS_00005 Wortlaut noch nicht übernommen

using rep = std::int64_t;

required type declaration to fulfill the C++ Clock requirements representing the number of ticks

Header-Datei#include "ara/tsync/timestamp.h"
Scopestruct ara::tsync::TimeBase
Symbolrep

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

Record
AUTOSAR/AP/record/SWS_TS_01261
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_01261@rel:R25-11#7b8ecc44
Content hash
7b8ecc44
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_01261
Status: valid/unmigrated Version: rel:R25-11#e1fffc65 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_TS_01261@rel:R25-11#e1fffc65
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#7b8ecc442026-09-30
  • R21-11rel:R21-11#354e4b092026-10-14
  • R22-11rel:R22-11#4f8ca1772026-10-14
  • R23-11rel:R23-11#ffbe9b8d2026-10-14
  • R24-11rel:R24-11#e1fffc652026-10-14
  • R25-11rel:R25-11#e1fffc652026-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 time_point [SWS_TS_01264] Upstream: RS_AP_00130, RS_TS_00005 Wortlaut noch nicht übernommen

using time_point = std::chrono::time_point<TimeBase>;

represents a point in time

Header-Datei#include "ara/tsync/timestamp.h"
Scopestruct ara::tsync::TimeBase
Symboltime_point

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

Record
AUTOSAR/AP/record/SWS_TS_01264
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_01264@rel:R25-11#bb2caf41
Content hash
bb2caf41
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_01264
Status: valid/unmigrated Version: rel:R25-11#611cfa6a 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_TS_01264@rel:R25-11#611cfa6a
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#bb2caf412026-09-30
  • R21-11rel:R21-11#f0181e5d2026-10-14
  • R22-11rel:R22-11#1f9672ca2026-10-14
  • R23-11rel:R23-11#611cfa6a2026-10-14
  • R24-11rel:R24-11#611cfa6a2026-10-14
  • R25-11rel:R25-11#611cfa6a2026-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 Konstanten / Variablen

variable is_steady [SWS_TS_01265] Upstream: RS_AP_00130, RS_TS_00005 Wortlaut noch nicht übernommen

static constexpr bool is_steady = false;

required constant to fulfill the C++ Clock requirements as steady clock

Header-Datei#include "ara/tsync/timestamp.h"
Scopestruct ara::tsync::TimeBase
Symbolis_steady
Typbool

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

Record
AUTOSAR/AP/record/SWS_TS_01265
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_01265@rel:R25-11#bb6214b3
Content hash
bb6214b3
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_01265
Status: valid/unmigrated Version: rel:R25-11#edb698f5 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_TS_01265@rel:R25-11#edb698f5
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#bb6214b32026-09-30
  • R21-11rel:R21-11#0d0dd4892026-10-14
  • R22-11rel:R22-11#c6a540902026-10-14
  • R23-11rel:R23-11#6b5858822026-10-14
  • R24-11rel:R24-11#edb698f52026-10-14
  • R25-11rel:R25-11#edb698f52026-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