AceTime  3.0.0
Date and time classes for Arduino that support timezones from the TZ Database.
Public Member Functions | List of all members
ace_time::ZoneProcessorCacheBaseTemplate< ZP > Class Template Reference

The template class of BasicZoneProcessorCacheBase or ExtendedZoneProcessorCacheBase. More...

#include <ZoneProcessorCache.h>

Inheritance diagram for ace_time::ZoneProcessorCacheBaseTemplate< ZP >:
Inheritance graph
[legend]

Public Member Functions

 ZoneProcessorCacheBaseTemplate (ZP *zoneProcessors, uint8_t size)
 
uint8_t size () const
 Return the size of the cache.
 
ZP * getZoneProcessorAtIndex (uint8_t i)
 Get the ZoneProcessor at index i.
 
ZP * getZoneProcessor (uintptr_t zoneKey)
 Get ZoneProcessor from either a ZoneKey, basic::Info::ZoneInfo, an extended::Info::ZoneInfo, or complete::Info::ZoneInfo. More...
 

Detailed Description

template<typename ZP>
class ace_time::ZoneProcessorCacheBaseTemplate< ZP >

The template class of BasicZoneProcessorCacheBase or ExtendedZoneProcessorCacheBase.

The common implementation BasicZoneProcessorCache<SIZE> and ExtendedZoneProcessorCacheBase<SIZE> creates the caches inside the class itself, which will normally be created at static initialization time. An alternative implementation would create the cache on the heap.

Definition at line 26 of file ZoneProcessorCache.h.

Member Function Documentation

◆ getZoneProcessor()

template<typename ZP >
ZP* ace_time::ZoneProcessorCacheBaseTemplate< ZP >::getZoneProcessor ( uintptr_t  zoneKey)
inline

Get ZoneProcessor from either a ZoneKey, basic::Info::ZoneInfo, an extended::Info::ZoneInfo, or complete::Info::ZoneInfo.

This will never return nullptr.

Parameters
zoneKeyan opaque Zone primary key (e.g. const ZoneInfo*, or a uint16_t index into a database table of ZoneInfo records)

Definition at line 47 of file ZoneProcessorCache.h.


The documentation for this class was generated from the following file: