std::chrono::tai_clock
| Definiert in Header <chrono> |
||
| class tai_clock; |
(seit C++20) | |
Die Uhr std::chrono::tai_clock ist eine Clock, die die International Atomic Time (TAI) repräsentiert. Sie misst die Zeit seit dem 1. Januar 1958, 00:00:00, und liegt zu diesem Datum 10 Sekunden vor UTC (d.h. ihr Epoche, 1958-01-01 00:00:00 TAI, entspricht 1957-12-31 23:59:50 UTC).
In TAI werden keine Schaltsekunden eingefügt. Daher fällt UTC jedes Mal, wenn eine Schaltsekunde in UTC eingefügt wird, eine weitere Sekunde hinter TAI zurück. Zum Zeitpunkt Dezember 2017 liegt UTC 37 Sekunden hinter TAI, was dem anfänglichen Offset von 10 Sekunden und den 27 Schaltsekunden zwischen 1958 und 2017 entspricht. Somit ist der 2018-01-01 00:00:00 UTC gleichbedeutend mit dem 2018-01-01 00:00:37 TAI.
tai_clock erfüllt die Anforderungen an eine Clock. Sie erfüllt nicht die Anforderungen an eine TrivialClock, es sei denn, die Implementierung kann garantieren, dass now() keine Ausnahme auslöst.
Inhalt |
Zeitpunkt-Familie
| Definiert im Namespace std::chrono |
||
| template<class Duration> using tai_time = std::chrono::time_point<std::chrono::tai_clock, Duration>; |
(seit C++20) | |
| using tai_seconds = tai_time<std::chrono::seconds>; |
(seit C++20) | |
führt die Stream-Ausgabe für einen tai_time durch(Funktionstemplate) | |
liest einen tai_time aus einem Stream gemäß dem angegebenen Format(Funktionstemplate) | |
Formatierungsunterstützung für tai_time(Klassentemplate-Spezialisierung) |
[bearbeiten] Member types
| Mitgliedertyp | Definition |
rep
|
vorzeichenbehafteter arithmetischer Typ, der die Anzahl der Ticks in der Dauer der Uhr darstellt |
period
|
ein std::ratio-Typ, der die Tick-Periode der Uhr in Sekunden repräsentiert |
duration
|
std::chrono::duration<rep, period>, die negative Dauern darstellen kann |
time_point
|
class tai_clock; |
[bearbeiten] Member constants
| constexpr bool is_steady [static] |
true, wenn die Zeit zwischen Ticks immer konstant ist, d.h. Aufrufe von now() Werte zurückgeben, die selbst bei externen Taktänderungen monoton steigen, andernfalls false (öffentliche statische Member-Konstante) |
[bearbeiten] Memberfunktionen
| [static] |
gibt einen std::chrono::time_point zurück, der den aktuellen Zeitpunkt darstellt (public static member function) |
| [static] |
konvertiert tai_time in utc_time(public static member function) |
| [static] |
konvertiert utc_time in tai_time(public static member function) |