Classe gps_clock
Orologio per l'ora gps (Global Positioning System).
Sintassi
class gps_clock; // C++20
Osservazioni:
Questo orologio misura l'ora dalla domenica 6 gennaio 1980 00:00:00 UTC.
Questo orologio non tiene conto dei secondi intercalari. Ogni volta che viene aggiunto un secondo salto all'ora UTC, utc cade un altro secondo dietro l'ora GPS.
Il tempo GPS è dietro il tempo TAI di 19 secondi perché 10 secondi sono stati aggiunti al tai time nel 1972 per tenere conto dei secondi salti accumulati fino a quel punto, e 9 secondi di salto in più sono stati aggiunti al tempo TAI tra il 1970 e il 1980.
Membri
Nome | Descrizione |
---|---|
from_utc |
Statico. Converte utc_time in gps_time . |
now |
Statico. Restituisce l'ora corrente gps. |
to_utc |
Statico. Converte gps_time in utc_time . |
Membri non membri
Nome | Descrizione |
---|---|
from_stream |
Analizzare un oggetto gps_time dal flusso specificato usando il formato specificato. |
operator<< |
Restituisce un oggetto gps_time nel flusso specificato. |
Alias del tipo di praticità
Nome | Descrizione |
---|---|
gps_clock::duration |
Nell'implementazione di Microsoft, è un sinonimo di duration<long long, ratio<1, 10'000'000> . Rappresenta una durata del tempo, misurata in unità di 100 nanosecondi. |
gps_clock::period |
Nell'implementazione di Microsoft, è un sinonimo di ratio<1, 10'000'000> . Rappresenta l'ora in frazioni di un secondo (100 nanosecondi) tra ogni tick di clock nella durata. |
gps_clock::rep |
Sinonimo del tipo (long long ) utilizzato per rappresentare le unità integrali di questo orologio.gps_clock::duration |
gps_clock::time_point |
Sinonimo di time_point<gps_clock> . Utilizzato per rappresentare un oggetto time_point per questo orologio. |
Imparentato
Nome | Descrizione |
---|---|
gps_time |
Sinonimo di template <class Duration> using gps_time = time_point<gps_clock, Duration> . Utilizzato per rappresentare un oggetto time_point per un oggetto gps_clock . Specificare .Duration Definito in std::chrono |
gps_seconds |
Sinonimo di using gps_seconds = gps_time<seconds>; Un conteggio di secondi, rappresentato da un time_point oggetto associato a un oggetto gps_clock . Definito in std::chrono |
Costanti pubbliche
Nome | Descrizione |
---|---|
gps_clock::is_steady costante |
Indica se il tipo di orologio è costante. Il valore è false . |
Requisiti
Intestazione: <chrono>
(da C++20)
Spazio dei nomi: std::chrono
Opzione del compilatore: /std:c++latest
from_utc
Metodo statico che converte un oggetto utc_time
in un oggetto gps_time
.
template<class Duration>
static gps_time<common_type_t<Duration, seconds>>
from_utc(const utc_time<Duration>& t) noexcept;
Parametri
t
Oggetto utc_time
da convertire.
Valore restituito
Oggetto gps_time
impostato sullo stesso punto nel tempo dell'oggetto utc_time
t
. Viene calcolato come gps_time<common_type_t<Duration, seconds>>{t.time_since_epoch()} - 315964809s
dove 315964809s == sys_days{1980y/January/Sunday[1]} - sys_days{1970y/January/1} + 9s
. Numero di secondi tra il utc_clock
periodo e il gps_clock
periodo.
to_utc
Metodo statico che converte un oggetto gps_time
in un oggetto utc_time
.
template<class Duration>
static utc_time<common_type_t<Duration, seconds>>
to_utc(const gps_time<Duration>& t) noexcept;
Parametri
t
Oggetto gps_time
da convertire.
Valore restituito
Oggetto utc_time
impostato sullo stesso punto nel tempo dell'oggetto gps_time
. Viene calcolato come gps_time<common_type_t<Duration, seconds>>{t.time_since_epoch()} + 315964809s
dove 315964809s == sys_days{1980y/January/Sunday[1]} - sys_days{1970y/January/1} + 9s
. Numero di secondi tra i periodi di utc_clock
e .gps_clock
is_steady
Valore statico che specifica se il tipo di clock è costante. Nell'implementazione di Microsoft è is_steady_constant
sempre false
. Poiché non gps_clock
è costante, non è possibile usare questo orologio in modo affidabile per impiegare il tempo prima di un evento, l'ora dopo un evento e sottraerle per ottenere la durata dell'evento perché l'orologio può essere regolato durante tale tempo.
static const bool is_steady = system_clock::is_steady; // system_clock::is_steady equals false
now
Metodo statico che restituisce l'ora GPS corrente.
static time_point now() noexcept;
Valore restituito
Oggetto time_point che rappresenta l'ora corrente. Il punto di tempo restituito è effettivamente from_utc(utc_clock::now())
.
Vedi anche
<chrono>
file_clock class
high_resolution_clock
local_t
Struct
steady_clock
Struct
system_clock
Struct
Classe tai_clock
Riferimento file di intestazione