Classe gps_clock
Horloge pour l’heure GPS (Global Positioning System).
Syntaxe
class gps_clock; // C++20
Notes
Cette horloge mesure l’heure depuis le dimanche 6 janvier 1980 00:00:00 UTC.
Cette horloge ne tient pas compte des secondes bissextiles. Chaque fois qu’une seconde de saut est ajoutée à l’heure UTC, UTC tombe une autre seconde derrière l’heure GPS.
Le temps GPS est derrière le temps DE TAI de 19 secondes, car 10 secondes ont été ajoutées à la durée de tai en 1972 pour tenir compte des secondes de saut qui avaient accumulé jusqu’à ce point, et 9 secondes supplémentaires ont été ajoutées à l’heure DE TAI entre 1970 et 1980.
Membres
Nom | Description |
---|---|
from_utc |
Statique. Convertit une utc_time en une gps_time . |
now |
Statique. Retourne l’heure actuelle du GPS. |
to_utc |
Statique. Convertit une gps_time en une utc_time . |
Non-membres
Nom | Description |
---|---|
from_stream |
Analysez une gps_time valeur à partir du flux donné à l’aide du format spécifié. |
operator<< |
Sortie d’un gps_time flux donné. |
Alias de type pratique
Nom | Description |
---|---|
gps_clock::duration |
Dans l’implémentation de Microsoft, il s’agit d’un synonyme de duration<long long, ratio<1, 10'000'000> . Il représente une durée, exprimée en unités de 100 nanosecondes. |
gps_clock::period |
Dans l’implémentation de Microsoft, il s’agit d’un synonyme de ratio<1, 10'000'000> . Il représente l’heure en fractions d’une seconde (100 nanosecondes) entre chaque cycles d’horloge dans la durée. |
gps_clock::rep |
Synonyme du type (long long ) utilisé pour représenter les unités intégrales dans cette horloge gps_clock::duration . |
gps_clock::time_point |
Synonyme de time_point<gps_clock> . Utilisé pour représenter une time_point horloge. |
Associé
Nom | Description |
---|---|
gps_time |
Synonyme de template <class Duration> using gps_time = time_point<gps_clock, Duration> . Utilisé pour représenter un time_point pour un gps_clock . Vous spécifiez le Duration . Défini dans std::chrono |
gps_seconds |
Synonyme d’un using gps_seconds = gps_time<seconds>; nombre de secondes, représenté par un time_point associé à un gps_clock . Défini dans std::chrono |
Constantes publiques
Nom | Description |
---|---|
gps_clock::is_steady constant |
Indique si le type d’horloge est stable. Sa valeur est de false . |
Spécifications
En-tête : <chrono>
(depuis C++20)
Espace de noms : std::chrono
Option du compilateur : /std:c++latest
from_utc
Méthode statique qui convertit un utc_time
gps_time
en .
template<class Duration>
static gps_time<common_type_t<Duration, seconds>>
from_utc(const utc_time<Duration>& t) noexcept;
Paramètres
t
utc_time
à convertir.
Valeur retournée
Défini gps_time
sur le même point dans le temps que le utc_time
t
. Il est calculé comme gps_time<common_type_t<Duration, seconds>>{t.time_since_epoch()} - 315964809s
où 315964809s == sys_days{1980y/January/Sunday[1]} - sys_days{1970y/January/1} + 9s
. Il s’agit du nombre de secondes entre l’époque utc_clock
et l’époque gps_clock
.
to_utc
Méthode statique qui convertit un gps_time
utc_time
en .
template<class Duration>
static utc_time<common_type_t<Duration, seconds>>
to_utc(const gps_time<Duration>& t) noexcept;
Paramètres
t
gps_time
à convertir.
Valeur de retour
Défini utc_time
sur le même point dans le temps que le gps_time
. Il est calculé comme gps_time<common_type_t<Duration, seconds>>{t.time_since_epoch()} + 315964809s
où 315964809s == sys_days{1980y/January/Sunday[1]} - sys_days{1970y/January/1} + 9s
. C’est le nombre de secondes entre les époques du utc_clock
et le gps_clock
.
is_steady
Valeur statique qui spécifie si le type d’horloge est stable. Dans l’implémentation de Microsoft, is_steady_constant
est toujours false
. Comme le gps_clock
n’est pas stable, vous ne pouvez pas utiliser cette horloge de manière fiable pour prendre le temps avant un événement, l’heure après un événement et les soustraire pour obtenir la durée de l’événement, car l’horloge peut être ajustée pendant cette période.
static const bool is_steady = system_clock::is_steady; // system_clock::is_steady equals false
now
Méthode statique qui retourne l’heure GPS actuelle.
static time_point now() noexcept;
Valeur de retour
Objet time_point qui représente l’heure actuelle. Le point de temps retourné est effectivement from_utc(utc_clock::now())
.
Voir aussi
<chrono>
file_clock class
high_resolution_clock
Struct local_t
Struct steady_clock
Struct system_clock
tai_clock
, classe
Informations de référence sur les fichiers d’en-tête