AceTime
0.6.1
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.
|
An entry in ZoneInfo which describes which ZonePolicy was being followed during a particular time period. More...
#include <ZoneInfo.h>
Public Attributes | |
const ZonePolicy *const | zonePolicy |
Zone policy, determined by the RULES column. More... | |
const char *const | format |
Zone abbreviations (e.g. More... | |
int8_t const | offsetCode |
UTC offset in 15 min increments. More... | |
int8_t const | deltaCode |
If zonePolicy is nullptr, then this indicates the DST offset in 15 minute increments. More... | |
int8_t const | untilYearTiny |
Era is valid until currentTime < untilYear. More... | |
uint8_t const | untilMonth |
The month field in UNTIL (1-12). More... | |
uint8_t const | untilDay |
The day field in UNTIL (1-31). More... | |
uint8_t const | untilTimeCode |
The time field of UNTIL field in 15-minute increments. More... | |
uint8_t const | untilTimeModifier |
UNTIL time modifier suffix: 'w', 's' or 'u'. More... | |
Static Public Attributes | |
static const int8_t | kMaxUntilYearTiny = ZoneRule::kMaxYearTiny + 1 |
The maximum value of untilYearTiny. More... | |
An entry in ZoneInfo which describes which ZonePolicy was being followed during a particular time period.
Corresponds to one line of the ZONE record in the TZ Database file ending with an UNTIL field. The ZonePolicy is determined by the RULES column in the TZ Database file.
There are 2 types of ZoneEra: 1) zonePolicy == nullptr. Then deltaCode determines the additional offset from offsetCode. A value of '-' in the TZ Database file is stored as 0. 2) zonePolicy != nullptr. Then the deltaCode offset is given by the ZoneRule.deltaCode of the ZoneRule which matches the time instant of interest.
Definition at line 20 of file ZoneInfo.h.
int8_t const ace_time::extended::ZoneEra::deltaCode |
If zonePolicy is nullptr, then this indicates the DST offset in 15 minute increments.
It could be 0, which means that the 'RULES' column was '-'.
Definition at line 45 of file ZoneInfo.h.
const char* const ace_time::extended::ZoneEra::format |
Zone abbreviations (e.g.
PST, EST) determined by the FORMAT column. Only a single letter subsitution is supported so that 's' is changed to just ''. For example, 'EST' is stored as 'ET', and the LETTER substitution is performed on the '' character.
Definition at line 36 of file ZoneInfo.h.
|
static |
The maximum value of untilYearTiny.
Definition at line 22 of file ZoneInfo.h.
int8_t const ace_time::extended::ZoneEra::offsetCode |
UTC offset in 15 min increments.
Determined by the GMTOFF column.
Definition at line 39 of file ZoneInfo.h.
uint8_t const ace_time::extended::ZoneEra::untilDay |
The day field in UNTIL (1-31).
Will never be 0. Also, there's no need for untilDayOfWeek, because the database generator will resolve the exact day of month based on the known year and month.
Definition at line 61 of file ZoneInfo.h.
uint8_t const ace_time::extended::ZoneEra::untilMonth |
uint8_t const ace_time::extended::ZoneEra::untilTimeCode |
The time field of UNTIL field in 15-minute increments.
A range of 00:00 to 25:00 corresponds to 0-100.
Definition at line 67 of file ZoneInfo.h.
uint8_t const ace_time::extended::ZoneEra::untilTimeModifier |
UNTIL time modifier suffix: 'w', 's' or 'u'.
Definition at line 70 of file ZoneInfo.h.
int8_t const ace_time::extended::ZoneEra::untilYearTiny |
Era is valid until currentTime < untilYear.
Stored as (year - 2000) in a single byte to save space. Comes from the UNTIL column.
Definition at line 51 of file ZoneInfo.h.
const ZonePolicy* const ace_time::extended::ZoneEra::zonePolicy |
Zone policy, determined by the RULES column.
Set to nullptr if the RULES column is '-' or an explicit DST shift in the form of 'hh:mm'.
Definition at line 28 of file ZoneInfo.h.