AceTime  2.1.0
Date and time classes for Arduino that support timezones from the TZ Database.
ZoneContext.h
1 /*
2  * MIT License
3  * Copyright (c) 2019 Brian T. Park
4  */
5 
6 #ifndef ACE_TIME_COMMON_ZONE_CONTEXT_H
7 #define ACE_TIME_COMMON_ZONE_CONTEXT_H
8 
9 namespace ace_time {
10 namespace internal {
11 
16 struct ZoneContext {
18  static const uint8_t kSuffixW = 0x00;
19 
21  static const uint8_t kSuffixS = 0x10;
22 
24  static const uint8_t kSuffixU = 0x20;
25 
27  int16_t startYear;
28 
30  int16_t untilYear;
31 
33  const char* tzVersion;
34 
36  uint8_t numFragments;
37 
39  const char* const* fragments;
40 };
41 
42 } // internal
43 } // ace_time
44 
45 #endif
Metadata about the zone database.
Definition: ZoneContext.h:16
static const uint8_t kSuffixW
Represents 'w' or wall time.
Definition: ZoneContext.h:18
uint8_t numFragments
Number of fragments.
Definition: ZoneContext.h:36
int16_t untilYear
Until year of the zone files.
Definition: ZoneContext.h:30
int16_t startYear
Start year of the zone files.
Definition: ZoneContext.h:27
const char *const * fragments
Zone Name fragment list.
Definition: ZoneContext.h:39
const char * tzVersion
TZ Database version which generated the zone info.
Definition: ZoneContext.h:33
static const uint8_t kSuffixS
Represents 's' or standard time.
Definition: ZoneContext.h:21
static const uint8_t kSuffixU
Represents 'u' or UTC time.
Definition: ZoneContext.h:24