[#BloombergLP-bdlt-CurrentTime] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlt.adoc[bdlt]::CurrentTime :relfileprefix: ../../ :mrdocs: This `struct` provides a namespace for current‐time‐retrieval procedures including a configurable global callback mechanism. The use of a _subset_ of these procedures is thread‐safe (see `Thread Safety`). == Synopsis Declared in `<bdlt_currenttime.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- struct CurrentTime; ---- == Type Aliases [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bdlt/CurrentTime/CurrentTimeCallback-02.adoc[`CurrentTimeCallback`] | `CurrentTimeCallback` is a callback function pointer for a callback function that returns a `bsls::TimeInterval` object. This function must be thread‐safe in multi‐threaded builds. |=== == Static Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bdlt/CurrentTime/asDatetimeTz.adoc[`asDatetimeTz`] | Return the `DatetimeTz` value representing the current date/time in the local time zone, and the local time zone's offset from UTC, as provided by the installed callback function and the facilities of `LocalTimeOffset`. | xref:BloombergLP/bdlt/CurrentTime/currentTimeCallback-0c.adoc[`currentTimeCallback`] | Return the installed function used to retrieve the interval between `EpochUtil::epoch()` and the current date/time, | xref:BloombergLP/bdlt/CurrentTime/currentTimeDefault.adoc[`currentTimeDefault`] | Return the `TimeInterval` value between `EpochUtil::epoch()` and the current date/time. This is the default current‐time callback implementation for current time retrieval. The obtained time is expressed as a time interval from `00:00 UTC, January 1, 1970`. The resolution is: * Unix DG‐Unix: microsecond resolution | xref:BloombergLP/bdlt/CurrentTime/local.adoc[`local`] | Return the `Datetime` value representing the current date/time in the local time zone, as provided by the installed callback function and the facilities of `LocalTimeOffset`. | xref:BloombergLP/bdlt/CurrentTime/now.adoc[`now`] | Return the `TimeInterval` value between `EpochUtil::epoch()` and the current date/time as provided by the installed callback function. Note that this value is independent of time zone. | xref:BloombergLP/bdlt/CurrentTime/setCurrentTimeCallback.adoc[`setCurrentTimeCallback`] | Set the specified `callback` as the function to be used to retrieve the interval between `EpochUtil::epoch()` and the current date/time, and return the previously set function. | xref:BloombergLP/bdlt/CurrentTime/utc.adoc[`utc`] | Return the `Datetime` value representing the current date/time in Coordinated Universal Time (UTC) as provided by the installed callback function. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#