Sdílet prostřednictvím


Třída gps_clock

Hodiny pro globální polohovací systém (GPS) čas.

Syntaxe

class gps_clock; // C++20

Poznámky

Tyto hodiny měří čas od neděle, 6. ledna 1980 00:00:00 UTC.

Tyto hodiny nezohlácuje přestupné sekundy. Kdykoli se přidá přestupná sekunda do času UTC, utc padá další sekundu za GPS čas.

Doba GPS je za časem TAI o 19 sekund, protože 10 sekund byly přidány do tai čas v roce 1972, aby se zohlednily přestupné sekundy, které se nashromáždily do tohoto bodu, a 9 dalších přestupných sekund byly přidány do tai čas mezi 1970 a 1980.

Členové

Název Popis
from_utc Statický. Převede na utc_time .gps_time
now Statický. Vrátí aktuální čas GPS.
to_utc Statický. Převede na gps_time .utc_time

Nečlenové

Název Popis
from_stream Parsujte gps_time z daného datového proudu pomocí zadaného formátu.
operator<< gps_time Vypíše do daného datového proudu.

Aliasy typů pohodlí

Název Popis
gps_clock::duration V implementaci Microsoftu je to synonymum pro duration<long long, ratio<1, 10'000'000>. Představuje dobu trvání měřenou v jednotkách 100 nanosekund.
gps_clock::period V implementaci Microsoftu je to synonymum pro ratio<1, 10'000'000>. Představuje čas ve zlomcích sekundy (100 nanosekund) mezi jednotlivými hodinami v době trvání.
gps_clock::rep Synonymum pro typ (long long) sloužící k reprezentaci integrálních jednotek v tomto formátu gps_clock::duration.
gps_clock::time_point Synonymum pro time_point<gps_clock>. Používá se k reprezentaci time_point pro tento čas.

Příbuzný

Název Popis
gps_time Synonymum pro template <class Duration> using gps_time = time_point<gps_clock, Duration>. Používá se k reprezentaci time_point pro .gps_clock Zadáte hodnotu Duration. Definováno v std::chrono
gps_seconds Synonymum pro using gps_seconds = gps_time<seconds>; počet sekund reprezentovaný time_point symbolem , který je přidružen k gps_clock. Definováno v std::chrono

Veřejné konstanty

Název Popis
gps_clock::is_steady konstanta Určuje, zda je typ hodin stabilní. Její hodnota je false.

Požadavky

Hlavička: <chrono> (od C++20)

Obor názvů: std::chrono

Možnost kompilátoru: /std:c++latest

from_utc

Statická metoda, která převede na utc_time .gps_time

template<class Duration>
static gps_time<common_type_t<Duration, seconds>>
from_utc(const utc_time<Duration>& t) noexcept;

Parametry

t
Převod.utc_time

Vrácená hodnota

Hodnota nastavená gps_time na stejný bod v čase jako hodnota utc_time t. Vypočítá se jako gps_time<common_type_t<Duration, seconds>>{t.time_since_epoch()} - 315964809s kde 315964809s == sys_days{1980y/January/Sunday[1]} - sys_days{1970y/January/1} + 9s. Což je počet sekund mezi epochou utc_clock a epochou gps_clock .

to_utc

Statická metoda, která převede na gps_time .utc_time

template<class Duration>
static utc_time<common_type_t<Duration, seconds>>
to_utc(const gps_time<Duration>& t) noexcept;

Parametry

t
Převod.gps_time

Návratová hodnota

Hodnota nastavená utc_time na stejný bod v čase jako hodnota gps_time. Vypočítá se jako gps_time<common_type_t<Duration, seconds>>{t.time_since_epoch()} + 315964809s kde 315964809s == sys_days{1980y/January/Sunday[1]} - sys_days{1970y/January/1} + 9s. To je počet sekund mezi epochami utc_clock a gps_clock.

is_steady

Statická hodnota, která určuje, zda je typ hodin stabilní. V implementaci is_steady_constant Microsoftu je vždy false. gps_clock Vzhledem k tomu, že není stabilní, nemůžete tento čas spolehlivě použít k tomu, abyste trvali čas před událostí, časem po události a odebrali je, abyste získali dobu trvání události, protože hodiny mohou být během této doby upraveny.

static const bool is_steady = system_clock::is_steady; // system_clock::is_steady equals false

now

Statická metoda, která vrací aktuální čas GPS.

static time_point now() noexcept;

Návratová hodnota

Objekt time_point , který představuje aktuální čas. Vrácený časový bod je efektivně from_utc(utc_clock::now()).

Viz také

<chrono>
file_clock class
high_resolution_clock
local_t Struct
steady_clock Struct
system_clock Struct
Třída tai_clock
Referenční informace k souborům hlaviček