Namespaces
Variants

std::chrono:: tai_clock

From cppreference.net
定義済みヘッダー <chrono>
class tai_clock ;
(C++20以降)

クロック std::chrono::tai_clock は、 Clock 要件を満たすクロックであり、 国際原子時 (TAI) を表します。このクロックは1958年1月1日00:00:00からの経過時間を計測し、その時点でUTCより10秒進んでいます(つまり、そのエポックである1958-01-01 00:00:00 TAIは、1957-12-31 23:59:50 UTCに相当します)。

閏秒はTAIには挿入されません。したがって、閏秒がUTCに挿入されるたびに、UTCはTAIからさらに1秒遅れます。2017年12月現在、UTCはTAIより37秒遅れており、これは10秒の初期オフセットと1958年から2017年の間に挿入された27回の閏秒を反映しています。したがって、2018-01-01 00:00:00 UTCは2018-01-01 00:00:37 TAIに相当します。

tai_clock Clock 要件を満たします。ただし、 now() が例外を投げないことを実装が保証できない限り、 TrivialClock 要件は満たしません。

目次

タイムポイントファミリー

名前空間 std::chrono で定義
template < class Duration >
using tai_time = std:: chrono :: time_point < std :: chrono :: tai_clock , Duration > ;
(C++20以降)
using tai_seconds = tai_time < std:: chrono :: seconds > ;
(C++20以降)
tai_time に対するストリーム出力を実行する
(関数テンプレート)
指定されたフォーマットに従ってストリームから tai_time を解析する
(関数テンプレート)
tai_time のフォーマットサポート
(クラステンプレートの特殊化)

メンバー型

メンバー型 定義
rep クロックの期間のティック数を表す符号付き算術型
period クロックのティック周期(秒単位)を表す std::ratio
duration std:: chrono :: duration < rep, period > 、負の期間を表現可能
time_point std:: chrono :: time_point < std :: chrono :: tai_clock >

メンバー定数

constexpr bool is_steady
[static]
true ティック間の時間が常に一定である場合、すなわち外部クロック調整の場合でも now() の呼び出しが単調に増加する値を返す場合、そうでない場合は false
(公開静的メンバ定数)

メンバー関数

[static]
現在の時点を表す std::chrono::time_point を返す
(public static member function)
[static]
tai_time utc_time に変換する
(public static member function)
[static]
utc_time tai_time に変換する
(public static member function)