[#BloombergLP-balber-BerUtil_DateAndTimeHeaderImpUtil]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/balber.adoc[balber]::BerUtil&lowbar;DateAndTimeHeaderImpUtil
:relfileprefix: ../../
:mrdocs:

Utilities for extended&hyphen;binary date&hyphen;and&hyphen;time header encoding&period;

== Synopsis

Declared in `&lt;balber&lowbar;berutil&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
struct BerUtil&lowbar;DateAndTimeHeaderImpUtil;
----

== Description

This component&hyphen;private utility `struct` provides a namespace for a suite of functions used by `BerUtil` to implement encoding and decoding operations for the 2&hyphen;byte header of extended&hyphen;binary&hyphen;encoding formatted date&hyphen;and&hyphen;time value&period;

== Type Aliases

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/balber/BerUtil_DateAndTimeHeaderImpUtil/Header.adoc[`Header`] 
| Alias for the extended&hyphen;binary date&hyphen;and&hyphen;time header class&period;
| xref:BloombergLP/balber/BerUtil_DateAndTimeHeaderImpUtil/StreambufUtil.adoc[`StreambufUtil`] 
| `StreambufUtil` is an alias to a namespace for a suite of functions used to implement input and output operations on `bsl&colon;&colon;streambuf` objects&period;
| xref:BloombergLP/balber/BerUtil_DateAndTimeHeaderImpUtil/TimezoneUtil.adoc[`TimezoneUtil`] 
| `TimezoneUtil` is an alias to a namespace for a suite of functions used to implement BER encoding and decoding operations for time&hyphen;zone offset values&period;
| xref:BloombergLP/balber/BerUtil_DateAndTimeHeaderImpUtil/Type.adoc[`Type`] 
| Alias for the extended&hyphen;binary header type enumeration&period;
|===


== Static Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/balber/BerUtil_DateAndTimeHeaderImpUtil/detectType.adoc[`detectType`] 
| If the specified `firstByte` of an encoded date&hyphen;and&hyphen;time value indicates it is in a compact&hyphen;binary&hyphen;encoding format or an ISO 8601 format, load the value&period;
| xref:BloombergLP/balber/BerUtil_DateAndTimeHeaderImpUtil/detectTypeIfNotReserved.adoc[`detectTypeIfNotReserved`] 
| If the specified `firstByte` of an encoded date&hyphen;and&hyphen;time value indicates it is in a compact&hyphen;binary&hyphen;encoding format or an ISO 8601 format, load the value&period;
| xref:BloombergLP/balber/BerUtil_DateAndTimeHeaderImpUtil/getValue-0d.adoc[`getValue`] 
| `getValue` overloads
| xref:BloombergLP/balber/BerUtil_DateAndTimeHeaderImpUtil/getValueIfNotReserved-09.adoc[`getValueIfNotReserved`] 
| `getValueIfNotReserved` overloads
| xref:BloombergLP/balber/BerUtil_DateAndTimeHeaderImpUtil/isExtendedBinary.adoc[`isExtendedBinary`] 
| Return `true` if the specified `firstByte` of an encoded date&hyphen;and&hyphen;time value indicates it is in the extended&hyphen;binary&hyphen;encoding format, and return `false`&period;
| xref:BloombergLP/balber/BerUtil_DateAndTimeHeaderImpUtil/isExtendedBinaryWithTimezone.adoc[`isExtendedBinaryWithTimezone`] 
| Return `true` if the specified `firstByte` if an encoded date&hyphen;and&hyphen;time value indicates is is in the extended&hyphen;binary&hyphen;encoding format and carries a time&hyphen;zone&period;
| xref:BloombergLP/balber/BerUtil_DateAndTimeHeaderImpUtil/isExtendedBinaryWithoutTimezone.adoc[`isExtendedBinaryWithoutTimezone`] 
| Return `true` if the specified `firstByte` of an encoded date&hyphen;and&hyphen;time value indicates it is in the extended&hyphen;binary&hyphen;encoding format and does not carry a&period;
| xref:BloombergLP/balber/BerUtil_DateAndTimeHeaderImpUtil/isReserved.adoc[`isReserved`] 
| Return `true` if the specified `firstByte` of an encoded date&hyphen;and&hyphen;time value indicates it is in a format reserved for future use, and return `false` otherwise&period;
| xref:BloombergLP/balber/BerUtil_DateAndTimeHeaderImpUtil/putExtendedBinaryWithTimezoneValue.adoc[`putExtendedBinaryWithTimezoneValue`] 
| Write a representation of an extended&hyphen;binary header value that carries the specified `timezoneOffsetInMinutes` time&hyphen;zone offset value to the specified&period;
| xref:BloombergLP/balber/BerUtil_DateAndTimeHeaderImpUtil/putExtendedBinaryWithoutTimezoneValue.adoc[`putExtendedBinaryWithoutTimezoneValue`] 
| Write a representation of an extended&hyphen;binary header value that does not carry a time&hyphen;zone offset value to the specified `streamBuf`&period;
|===


== Static Data Members

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/balber/BerUtil_DateAndTimeHeaderImpUtil/k_HEADER_LENGTH.adoc[`k&lowbar;HEADER&lowbar;LENGTH`] 
| Number of octets used to encode an extended&hyphen;binary&hyphen;encoding header&period;
|===



[.small]#Created with https://www.mrdocs.com[MrDocs]#
