gps_clock
sınıfı
Global Konumlandırma Sistemi (GPS) zamanı için bir saat.
Sözdizimi
class gps_clock; // C++20
Açıklamalar
Bu saat, 6 Ocak 1980 Pazar 00:00:00 UTC'den bu yana olan süreyi ölçer.
Bu saat artık saniyeleri dikkate almaz. UTC saatine artık saniye eklendiğinde UTC, GPS saatinin gerisinde bir saniye daha düşer.
GPS süresi TAI süresinin 19 saniye gerisindedir çünkü 1972'de TAI süresine o noktaya kadar birikmiş olan artık saniyeleri hesaba katmak için 10 saniye eklenmiştir ve 1970 ile 1980 arasında TAI süresine 9 artık saniye daha eklenmiştir.
Üyeler
Ad | Tanım |
---|---|
from_utc |
Statik. a'yi utc_time öğesine gps_time dönüştürür. |
now |
Statik. GPS geçerli saatini döndürür. |
to_utc |
Statik. a'yi gps_time öğesine utc_time dönüştürür. |
Üye olmayanlar
Ad | Tanım |
---|---|
from_stream |
Belirtilen biçimi kullanarak verilen akıştan bir gps_time ayrıştırın. |
operator<< |
Verilen akışa a gps_time çıkışı. |
Kolaylık türü diğer adları
Ad | Tanım |
---|---|
gps_clock::duration |
Microsoft'un uygulamasında bu, için duration<long long, ratio<1, 10'000'000> bir eş anlamlıdır. 100 nanosaniyelik birimlerle ölçülen süreyi temsil eder. |
gps_clock::period |
Microsoft'un uygulamasında bu, için ratio<1, 10'000'000> bir eş anlamlıdır. Süredeki her saat işareti arasındaki saniyenin (100 nanosaniye) kesirli zamanını temsil eder. |
gps_clock::rep |
Bu saatin gps_clock::duration integral birimlerini temsil etmek için kullanılan türü (long long ) için bir eş anlamlı. |
gps_clock::time_point |
için time_point<gps_clock> bir eş anlamlı. Bu saat için bir time_point temsil etmek için kullanılır. |
Ilgili
Ad | Tanım |
---|---|
gps_time |
için template <class Duration> using gps_time = time_point<gps_clock, Duration> bir eş anlamlı. için öğesini time_point temsil etmek için gps_clock kullanılır. öğesini belirtirsiniz Duration . Tanımlandığı yer: std::chrono |
gps_seconds |
saniye sayısı için using gps_seconds = gps_time<seconds>; bir eş anlamlı, ile ilişkilendirilmiş bir time_point ile gps_clock temsil edilir. Tanımlandığı yer: std::chrono |
Genel Sabitler
Ad | Tanım |
---|---|
gps_clock::is_steady Sabit |
Saat türünün sabit olup olmadığını gösterir. Değeri şeklindedir false . |
Gereksinimler
Üst bilgi:<chrono>
(C++20'den beri)
Ad alanı:std::chrono
Derleyici Seçeneği:/std:c++latest
from_utc
bir utc_time
gps_time
öğesine dönüştüren statik yöntem.
template<class Duration>
static gps_time<common_type_t<Duration, seconds>>
from_utc(const utc_time<Duration>& t) noexcept;
Parametreler
t
utc_time
Dönüştürülecek.
Dönüş değeri
ile gps_time
aynı zaman noktasına ayarlanmış bir utc_time
t
küme. burada 315964809s == sys_days{1980y/January/Sunday[1]} - sys_days{1970y/January/1} + 9s
olarak gps_time<common_type_t<Duration, seconds>>{t.time_since_epoch()} - 315964809s
hesaplanır. Bu, dönem ile gps_clock
dönem arasındaki utc_clock
saniye sayısıdır.
to_utc
bir gps_time
utc_time
öğesine dönüştüren statik yöntem.
template<class Duration>
static utc_time<common_type_t<Duration, seconds>>
to_utc(const gps_time<Duration>& t) noexcept;
Parametreler
t
gps_time
Dönüştürülecek.
İade Değeri
ile utc_time
aynı zaman noktasına ayarlanmış bir gps_time
küme. burada 315964809s == sys_days{1980y/January/Sunday[1]} - sys_days{1970y/January/1} + 9s
olarak gps_time<common_type_t<Duration, seconds>>{t.time_since_epoch()} + 315964809s
hesaplanır. Bu, ve dönemleri utc_clock
arasındaki saniye sayısıdır gps_clock
.
is_steady
Saat türünün sabit olup olmadığını belirten statik değer. Microsoft'un uygulamasında is_steady_constant
her zaman false
olur. gps_clock
sabit olmadığından, bu saati güvenilir bir şekilde kullanarak bir olaydan önceki süreyi, bir olaydan sonraki süreyi alamaz ve bu süre boyunca ayarlanabileceği için olayın süresini almak için bu saati çıkaramazsınız.
static const bool is_steady = system_clock::is_steady; // system_clock::is_steady equals false
now
Geçerli GPS zamanını döndüren statik yöntem.
static time_point now() noexcept;
İade Değeri
Geçerli saati temsil eden bir time_point nesnesi. Döndürülen zaman noktası etkili bir şekilde from_utc(utc_clock::now())
olur.
Ayrıca bkz.
<chrono>
file_clock class
high_resolution_clock
local_t
Yapı
steady_clock
Yapı
system_clock
Yapı
tai_clock
sınıfı
Üst Bilgi Dosyaları Başvurusu
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin