Udostępnij za pośrednictwem


Klasa gps_clock

Zegar czasu globalnego systemu pozycjonowania (GPS).

Składnia

class gps_clock; // C++20

Uwagi

Ten zegar mierzy czas od niedzieli, 6 stycznia 1980 00:00:00 UTC.

Ten zegar nie uwzględnia sekund przestępnych. Za każdym razem, gdy sekunda skokowa zostanie dodana do czasu UTC, utc spadnie kolejną sekundę za czasem GPS.

Czas GPS jest za czasem TAI o 19 sekund, ponieważ 10 sekund zostały dodane do czasu TAI w 1972 roku, aby uwzględnić sekundy przestępne, które zgromadziły się do tego punktu, a 9 kolejnych sekund przestępnych zostało dodanych do czasu TAI w latach 1970-1980.

Elementy członkowskie

Nazwa/nazwisko opis
from_utc Statyczny. Konwertuje element na utc_time .gps_time
now Statyczny. Zwraca bieżący czas GPS.
to_utc Statyczny. Konwertuje element na gps_time .utc_time

Inne niż elementy członkowskie

Nazwa/nazwisko opis
from_stream Przeanalizuj element gps_time z danego strumienia przy użyciu określonego formatu.
operator<< gps_time Wyprowadź element do danego strumienia.

Aliasy typu wygody

Nazwa/nazwisko opis
gps_clock::duration W implementacji firmy Microsoft jest to synonim .duration<long long, ratio<1, 10'000'000> Reprezentuje czas trwania mierzony w jednostkach 100 nanosekund.
gps_clock::period W implementacji firmy Microsoft jest to synonim .ratio<1, 10'000'000> Reprezentuje czas ułamków sekundy (100 nanosekund) między każdym znacznikiem zegara w czasie trwania.
gps_clock::rep Synonim typu (long long) używanego do reprezentowania jednostek całkowitych w tym zegarze gps_clock::duration.
gps_clock::time_point Synonim dla elementu time_point<gps_clock>. Służy do reprezentowania elementu dla tego zegara time_point .

Powiązane

Nazwa/nazwisko opis
gps_time Synonim dla elementu template <class Duration> using gps_time = time_point<gps_clock, Duration>. Służy do reprezentowania elementu time_point dla elementu gps_clock. Należy określić element Duration. Zdefiniowane w std::chrono
gps_seconds Synonim liczby using gps_seconds = gps_time<seconds>; sekund reprezentowany przez element time_point skojarzony z elementem gps_clock. Zdefiniowane w std::chrono

Stałe publiczne

Nazwa/nazwisko opis
gps_clock::is_steady stały Wskazuje, czy typ zegara jest stały. Jego wartość to false.

Wymagania

Nagłówek: <chrono> (od C++20)

Przestrzeń nazw: std::chrono

Opcja kompilatora: /std:c++latest

from_utc

Metoda statyczna, która konwertuje utc_time element na .gps_time

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

Parametry

t
Element utc_time do konwersji.

Wartość zwracana

Wartość ustawiona gps_time na ten sam punkt w czasie co .utc_time t Jest obliczana jako gps_time<common_type_t<Duration, seconds>>{t.time_since_epoch()} - 315964809s gdzie 315964809s == sys_days{1980y/January/Sunday[1]} - sys_days{1970y/January/1} + 9s. Jest to liczba sekund między epoką utc_clock a epoką gps_clock .

to_utc

Metoda statyczna, która konwertuje gps_time element na .utc_time

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

Parametry

t
Element gps_time do konwersji.

Wartość zwracana

Wartość ustawiona utc_time na ten sam punkt w czasie co .gps_time Jest obliczana jako gps_time<common_type_t<Duration, seconds>>{t.time_since_epoch()} + 315964809s gdzie 315964809s == sys_days{1980y/January/Sunday[1]} - sys_days{1970y/January/1} + 9s. Jest to liczba sekund między epokami utc_clock i gps_clock.

is_steady

Wartość statyczna określająca, czy typ zegara jest stały. W implementacji is_steady_constant firmy Microsoft jest zawsze false. Ponieważ element gps_clock nie jest stały, nie można niezawodnie używać tego zegara, aby upłynąć czas przed zdarzeniem, czas po zdarzeniu i odjąć je, aby uzyskać czas trwania zdarzenia, ponieważ zegar może być dostosowywany w tym czasie.

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

now

Metoda statyczna zwracająca bieżący czas GPS.

static time_point now() noexcept;

Wartość zwracana

Obiekt time_point reprezentujący bieżący czas. Zwracany punkt czasu jest skutecznie from_utc(utc_clock::now()).

Zobacz też

<chrono>
file_clock class
high_resolution_clock
local_t Struct
steady_clock Struct
system_clock Struct
Klasa tai_clock
Odwołanie do plików nagłówka