AceTime 3.0.0 Date and time classes for Arduino that support timezones from the TZ Database.

CompleteZoneProcessor.h
1 /*
2 * MIT License
3 * Copyright (c) 2023 Brian T. Park
4 */
5
6 #ifndef ACE_TIME_COMPLETE_ZONE_PROCESSOR_H
7 #define ACE_TIME_COMPLETE_ZONE_PROCESSOR_H
8
9 #include <stdint.h> // uintptr_t
10 #include "ExtendedZoneProcessor.h"
11
12 namespace ace_time {
13
19 class CompleteZoneProcessor: public
20 ExtendedZoneProcessorTemplate<complete::Info> {
21
22 public:
24 static const uint8_t kTypeComplete = 5;
25
26 explicit CompleteZoneProcessor(
27 const complete::Info::ZoneInfo* zoneInfo = nullptr)
28 : ExtendedZoneProcessorTemplate<complete::Info>(
29 kTypeComplete, &mZoneInfoStore, (uintptr_t) zoneInfo)
30 {}
31
32 private:
33 complete::Info::ZoneInfoStore mZoneInfoStore;
34 };
35
36 }
37
38 #endif
ace_time::CompleteZoneProcessor
A specific implementation of ExtendedZoneProcessorTemplate that uses the complete::ZoneXxxBrokers cla...
Definition: CompleteZoneProcessor.h:20
ace_time::CompleteZoneProcessor::kTypeComplete
static const uint8_t kTypeComplete
Unique TimeZone type identifier for CompleteZoneProcessor.
Definition: CompleteZoneProcessor.h:24
ace_time::ExtendedZoneProcessorTemplate
An implementation of ZoneProcessor that supports for all zones defined by the TZ Database.
Definition: ExtendedZoneProcessor.h:81
ace_time::ZoneInfoHigh::ZoneInfoStore
A storage object that creates an ZoneInfoBroker from a key that identifies the ZoneInfo.
Definition: ZoneInfoHigh.h:745
ace_time::ZoneInfoHigh::ZoneInfo
Representation of a given time zone, implemented as an array of ZoneEra records.
Definition: ZoneInfoHigh.h:303