AceTime  1.9.0
Date and time classes for Arduino that support timezones from the TZ Database.
ExtendedBrokers.cpp
1 /*
2  * MIT License
3  * Copyright (c) 2021 Brian T. Park
4  */
5 
6 #include <Arduino.h>
7 #include <AceCommon.h> // KString
8 #include "BrokerCommon.h" // findShortName()
9 #include "ExtendedBrokers.h"
10 
11 using ace_common::KString;
12 using ace_common::printReplaceCharTo;
13 using ace_time::internal::findShortName;
15 
16 namespace ace_time {
17 namespace extended {
18 
19 void ZoneInfoBroker::printNameTo(Print& printer) const {
20  const ZoneContext* zc = zoneContext();
21  KString kname(name(), zc->fragments, zc->numFragments);
22  kname.printTo(printer);
23 }
24 
25 void ZoneInfoBroker::printShortNameTo(Print& printer) const {
26  printReplaceCharTo(printer, findShortName(name()), '_', ' ');
27 }
28 
29 } // extended
30 } // ace_time
ace_time::extended::ZoneInfoBroker::printNameTo
void printNameTo(Print &printer) const
Print a human-readable identifier (e.g.
Definition: ExtendedBrokers.cpp:19
BrokerCommon.h
ace_time::internal::ZoneContext
Metadata about the zone database.
Definition: ZoneContext.h:16
ace_time::internal::ZoneContext::fragments
const char *const * fragments
Zone Name fragment list.
Definition: ZoneContext.h:47
ExtendedBrokers.h
ace_time::extended::ZoneInfoBroker::printShortNameTo
void printShortNameTo(Print &printer) const
Print a short human-readable identifier (e.g.
Definition: ExtendedBrokers.cpp:25
ace_time::internal::ZoneContext::numFragments
uint8_t numFragments
Number of fragments.
Definition: ZoneContext.h:44