[#BloombergLP-baltzo-Loader] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/baltzo.adoc[baltzo]::Loader :relfileprefix: ../../ :mrdocs: This class provides a protocol (a pure abstract interface) for loading a time zone object. == Synopsis Declared in `<baltzo_loader.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- class Loader; ---- == Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/baltzo/Loader/2destructor.adoc[`~Loader`] [.small]#[destructor]# [.small]#[virtual]# | Destroy this object. | xref:BloombergLP/baltzo/Loader/loadTimeZone.adoc[`loadTimeZone`] [.small]#[virtual]# | Load into the specified `result` the time zone information for the time zone identified by the specified `timeZoneId`. Return 0 on success, and a non‐zero value otherwise. A return status of `ErrorCode::k_UNSUPPORTED_ID` indicates that `timeZoneId` is not recognized. If an error occurs during this operation, `result` will be left in a valid, but otherwise unspecified state. On return, `result` will be well‐formed (see `ZoneinfoUtil::isWellFormed`) and `result‐>identifier()` will be `timeZoneId` (concrete implementations not meeting those constraints will not be usable by other other components in this package ‐‐ e.g., `baltzo_zoneinfocache`). |=== == Derived Classes [cols="1,4"] |=== | Name| Description | xref:BloombergLP/baltzo/DataFileLoader.adoc[`DataFileLoader`] | This component provides a concrete implementation of the `DataLoader` protocol for loading, into a `Zoneinfo`, the properties of a time zone defined by an Zoneinfo (TZ Database) binary file located on the file system. | xref:BloombergLP/baltzo/TestLoader.adoc[`TestLoader`] | This class provides a concrete test implementation of the `Loader` protocol (an abstract interface) for obtaining a time zone. This test implementation maintains a mapping of time‐zone identifiers to `Zoneinfo` objects. Time zone information objects are associated with a time‐zone identifier using the `setTimeZone` method, and can be subsequently accessed by calling the protocol method `loadTimeZone` with the same identifier. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#