AceTime  2.3.0
Date and time classes for Arduino that support timezones from the TZ Database.
zone_registry.cpp
1 // This file was generated by the following script:
2 //
3 // $ /home/brian/src/AceTimeTools/src/acetimetools/tzcompiler.py
4 // --input_dir /home/brian/src/AceTime/src/zonedbctesting/tzfiles
5 // --output_dir /home/brian/src/AceTime/src/zonedbctesting
6 // --tz_version 2023c
7 // --action zonedb
8 // --language arduino
9 // --scope complete
10 // --db_namespace zonedbctesting
11 // --include_list include_list.txt
12 // --nocompress
13 // --start_year 1980
14 // --until_year 2200
15 //
16 // using the TZ Database files
17 //
18 // africa
19 // antarctica
20 // asia
21 // australasia
22 // backward
23 // etcetera
24 // europe
25 // northamerica
26 // southamerica
27 //
28 // from https://github.com/eggert/tz/releases/tag/2023c
29 //
30 // Supported Zones: 16 (15 zones, 1 links)
31 // Unsupported Zones: 580 (335 zones, 245 links)
32 //
33 // Requested Years: [1980,2200]
34 // Accurate Years: [1980,32767]
35 //
36 // Original Years: [1844,2087]
37 // Generated Years: [1945,2087]
38 // Lower/Upper Truncated: [True,False]
39 //
40 // Estimator Years: [1945,2090]
41 // Max Buffer Size: 7
42 //
43 // Records:
44 // Infos: 16
45 // Eras: 30
46 // Policies: 12
47 // Rules: 227
48 //
49 // Memory (8-bits):
50 // Context: 16
51 // Rules: 2724
52 // Policies: 36
53 // Eras: 450
54 // Zones: 195
55 // Links: 13
56 // Registry: 32
57 // Formats: 92
58 // Letters: 23
59 // Fragments: 0
60 // Names: 260 (original: 260)
61 // TOTAL: 3841
62 //
63 // Memory (32-bits):
64 // Context: 24
65 // Rules: 2724
66 // Policies: 96
67 // Eras: 600
68 // Zones: 360
69 // Links: 24
70 // Registry: 64
71 // Formats: 92
72 // Letters: 33
73 // Fragments: 0
74 // Names: 260 (original: 260)
75 // TOTAL: 4277
76 //
77 // DO NOT EDIT
78 
79 #include <zoneinfo/compat.h>
80 #include "zone_infos.h"
81 #include "zone_registry.h"
82 
83 namespace ace_time {
84 namespace zonedbctesting {
85 
86 //---------------------------------------------------------------------------
87 // Zone Info registry. Sorted by zoneId.
88 //---------------------------------------------------------------------------
89 const complete::ZoneInfo* const kZoneRegistry[15] ACE_TIME_PROGMEM = {
90  &kZoneAmerica_New_York, // 0x1e2a7654, America/New_York
91  &kZonePacific_Apia, // 0x23359b5e, Pacific/Apia
92  &kZoneAustralia_Darwin, // 0x2876bdff, Australia/Darwin
93  &kZoneAmerica_Vancouver, // 0x2c6f6b1f, America/Vancouver
94  &kZoneAmerica_Caracas, // 0x3be064f4, America/Caracas
95  &kZoneAmerica_Chicago, // 0x4b92b5d4, America/Chicago
96  &kZoneAmerica_Whitehorse, // 0x54e0e3e8, America/Whitehorse
97  &kZoneEurope_Lisbon, // 0x5c00a70b, Europe/Lisbon
98  &kZoneAmerica_Edmonton, // 0x6cb9484a, America/Edmonton
99  &kZoneAfrica_Windhoek, // 0x789c9bd3, Africa/Windhoek
100  &kZoneAmerica_Toronto, // 0x792e851b, America/Toronto
101  &kZoneAmerica_Winnipeg, // 0x8c7dafc7, America/Winnipeg
102  &kZoneAmerica_Denver, // 0x97d10b2a, America/Denver
103  &kZoneAmerica_Los_Angeles, // 0xb7f7e8f2, America/Los_Angeles
104  &kZoneAfrica_Casablanca, // 0xc59f1b33, Africa/Casablanca
105 
106 };
107 
108 //---------------------------------------------------------------------------
109 // Zone and Link (fat) Info registry. Sorted by zoneId. Links act like Zones.
110 //---------------------------------------------------------------------------
111 const complete::ZoneInfo* const kZoneAndLinkRegistry[16] ACE_TIME_PROGMEM = {
112  &kZoneAmerica_New_York, // 0x1e2a7654, America/New_York
113  &kZonePacific_Apia, // 0x23359b5e, Pacific/Apia
114  &kZoneAustralia_Darwin, // 0x2876bdff, Australia/Darwin
115  &kZoneAmerica_Vancouver, // 0x2c6f6b1f, America/Vancouver
116  &kZoneAmerica_Caracas, // 0x3be064f4, America/Caracas
117  &kZoneAmerica_Chicago, // 0x4b92b5d4, America/Chicago
118  &kZoneAmerica_Whitehorse, // 0x54e0e3e8, America/Whitehorse
119  &kZoneEurope_Lisbon, // 0x5c00a70b, Europe/Lisbon
120  &kZoneAmerica_Edmonton, // 0x6cb9484a, America/Edmonton
121  &kZoneAfrica_Windhoek, // 0x789c9bd3, Africa/Windhoek
122  &kZoneAmerica_Toronto, // 0x792e851b, America/Toronto
123  &kZoneAmerica_Winnipeg, // 0x8c7dafc7, America/Winnipeg
124  &kZoneAmerica_Denver, // 0x97d10b2a, America/Denver
125  &kZoneUS_Pacific, // 0xa950f6ab, US/Pacific -> America/Los_Angeles
126  &kZoneAmerica_Los_Angeles, // 0xb7f7e8f2, America/Los_Angeles
127  &kZoneAfrica_Casablanca, // 0xc59f1b33, Africa/Casablanca
128 
129 };
130 
131 }
132 }
Macros and definitions that provide a consistency layer among the various Arduino boards for compatib...