#include <utl/LeapSeconds.h>
Public Member Functions | |
bool | ConvertGPSToUnix (const unsigned long gpsSecond, time_t &unixSecond) const |
returns true if the GPS second is an UTC leap second More... | |
void | ConvertUnixToGPS (const time_t unixSecond, unsigned long &gpsSecond) const |
void | Dump () const |
LeapSeconds () | |
~LeapSeconds () | |
Public Attributes | |
static LeapSeconds &return | instance |
Private Types | |
typedef GPSToUnixMap::const_iterator | GPSToUnixIterator |
typedef std::map< unsigned long, std::pair< int, int > > | GPSToUnixMap |
typedef UnixToGPSMap::const_iterator | UnixToGPSIterator |
typedef std::map< std::time_t, long > | UnixToGPSMap |
Private Member Functions | |
void | Init () |
void | SetUTC () |
void | UnsetUTC () |
Private Attributes | |
std::time_t | fGPSEpochInUnixSeconds |
GPSToUnixMap | fGPSToUnixLeaps |
std::string * | fTZ |
UnixToGPSMap | fUnixToGPSLeaps |
Quick definition: a positive leap second is a GPS second where the UTC second is exceptionally allowed to take the value of 60, i.e. the seconds run as 58, 59, 60, 00, 01... A negative leap second is removed from the last second of a day preceding the midnight, i.e. the day runs only until second 58 and jumps directly to 00 of the next day.
Definition at line 28 of file LeapSeconds.h.
|
private |
Definition at line 32 of file LeapSeconds.h.
|
private |
Definition at line 31 of file LeapSeconds.h.
|
private |
Definition at line 35 of file LeapSeconds.h.
|
private |
Definition at line 34 of file LeapSeconds.h.
|
inline |
Definition at line 38 of file LeapSeconds.h.
|
inline |
Definition at line 39 of file LeapSeconds.h.
References UnsetUTC().
bool LeapSeconds::ConvertGPSToUnix | ( | const unsigned long | gpsSecond, |
time_t & | unixSecond | ||
) | const |
returns true if the GPS second is an UTC leap second
Definition at line 11 of file LeapSeconds.cc.
References UnivRecNS::low.
void LeapSeconds::ConvertUnixToGPS | ( | const time_t | unixSecond, |
unsigned long & | gpsSecond | ||
) | const |
Definition at line 25 of file LeapSeconds.cc.
Referenced by rdet::RChannelSQLManager::BufferChannelList(), rdet::MonitoringSQLManager::BufferTemperature(), rdet::RBeaconSQLManager::GetBeaconFrequencies(), rdet::RBeaconSQLManager::GetBeaconRefPhase(), rdet::RChannelSQLManager::GetComponentFromBuffer(), io::RadioFileAERA::Read(), and Parser::ReadStrToTime().
void LeapSeconds::Dump | ( | ) | const |
Definition at line 90 of file LeapSeconds.cc.
|
private |
Definition at line 35 of file LeapSeconds.cc.
References utl::UTCDate::eJan, utl::UTCDate::eJul, utl::UTCDate::GetGPSEpoch(), and utl::UTCDate::GetUnixSecond().
Referenced by LeapSeconds().
|
private |
Definition at line 107 of file LeapSeconds.cc.
Referenced by LeapSeconds().
|
private |
Definition at line 118 of file LeapSeconds.cc.
Referenced by ~LeapSeconds().
|
private |
Definition at line 55 of file LeapSeconds.h.
|
private |
Definition at line 57 of file LeapSeconds.h.
|
private |
Definition at line 59 of file LeapSeconds.h.
|
private |
Definition at line 58 of file LeapSeconds.h.
|
inherited |
Definition at line 44 of file Singleton.h.