AceTime
0.3
Date and time classes for Arduino that support timezones from the TZ Database, and a system clock that can synchronize from an NTP server or an RTC chip.
|
Data structure that defines the start of a specific UTC offset as described by the matching ZoneEra and its ZoneRule for a given year. More...
#include <BasicZoneSpecifier.h>
Public Member Functions | |
void | log () const |
Used only for debugging. More... | |
Public Attributes | |
const ZoneEra * | era |
The ZoneEra that matched the given year. More... | |
const ZoneRule * | rule |
The Zone transition rule that matched for the the given year. More... | |
int8_t | yearTiny |
Year which applies to the ZoneEra or ZoneRule. More... | |
acetime_t | startEpochSeconds |
The calculated transition time of the given rule. More... | |
int8_t | offsetCode |
The total effective UTC offsetCode at the start of transition, including DST offset. More... | |
char | abbrev [kAbbrevSize] |
The calculated effective time zone abbreviation, e.g. More... | |
Static Public Attributes | |
static const uint8_t | kAbbrevSize = 6 + 1 |
Longest abbreviation currently seems to be 5 characters (https://www.timeanddate.com/time/zones/) but the TZ database spec says that abbreviations are 3 to 6 characters (https://data.iana.org/time-zones/theory.html#abbreviations), so use 6 as the maximum. | |
Data structure that defines the start of a specific UTC offset as described by the matching ZoneEra and its ZoneRule for a given year.
If the ZoneEra does not have a ZoneRule, then the Transition is defined by the start date of the ZoneEra.
Definition at line 31 of file BasicZoneSpecifier.h.
|
inline |
Used only for debugging.
Definition at line 70 of file BasicZoneSpecifier.h.
char ace_time::basic::Transition::abbrev[kAbbrevSize] |
The calculated effective time zone abbreviation, e.g.
"PST" or "PDT".
Definition at line 67 of file BasicZoneSpecifier.h.
const ZoneEra* ace_time::basic::Transition::era |
The ZoneEra that matched the given year.
NonNullable.
Definition at line 42 of file BasicZoneSpecifier.h.
int8_t ace_time::basic::Transition::offsetCode |
The total effective UTC offsetCode at the start of transition, including DST offset.
(Maybe rename this effectiveOffsetCode?) The DST offset can be recovered from rule->deltaCode.
Definition at line 64 of file BasicZoneSpecifier.h.
const ZoneRule* ace_time::basic::Transition::rule |
The Zone transition rule that matched for the the given year.
Set to nullptr if the RULES column is '-'. We do not support a RULES column that contains a UTC offset. There are only 2 time zones that has this property as of TZ database version 2018g: Europe/Istanbul and America/Argentina/San_Luis.
Definition at line 51 of file BasicZoneSpecifier.h.
acetime_t ace_time::basic::Transition::startEpochSeconds |
The calculated transition time of the given rule.
Definition at line 57 of file BasicZoneSpecifier.h.
int8_t ace_time::basic::Transition::yearTiny |
Year which applies to the ZoneEra or ZoneRule.
Definition at line 54 of file BasicZoneSpecifier.h.