The Harlinn.Common.Core library has its own set of core C++ classes and templates that are used throughout the library.

BasicString

BasicString is a template class implementing a reference counted C++ string type.

The API is similar to the API exposed by std::basic_string, and it’s used throughout the Harlinn.Common.Core library as a container for sequences of the char or wchar_t character types. more…

Binary

Binary is a reference counted Byte buffer.

The primary use case is to be able to pass incoming data to multiple threads for processing, or for using multiple threads to dispatch a block of data to multiple destinations. more…

Currency

A Currency object wraps a 64-bit integer, scaled by 10,000 to give a fixed-point number with 15 digits to the left of the decimal point and 4 digits to the right.

This representation provides a range of -922,337,203,685,477.5808 to 922,337,203,685,477.5807.

The Currency type is useful for calculations involving money and for fixed-point calculations in which accuracy is important.

DateTime

Represents an instant in time, in UTC.

The DateTime class represents dates and times with values ranging from 00:00:00 (midnight), January 1, 0001 Anno Domini (Common Era) through 23:59:59, December 31, 9999 A.D. (C.E.) in the Gregorian calendar.

Time values are measured in 100-nanosecond units called ticks. A particular date is the number of ticks since 12:00 midnight, January 1, 0001 A.D. (C.E.) in the Gregorian calendar. The number excludes ticks that would be added by leap seconds. For example, a ticks value of 31241376000000000L represents the date Friday, January 01, 0100 12:00:00 midnight.

Guid

A Guid is a 128-bit value that can be used across all computers and networks wherever a unique identifier is required. Such an identifier has a very low probability of being duplicated.

TimeSpan

A TimeSpan object represents a time interval measured as a positive or negative number of days, hours, minutes, seconds, and fractions of a second.

The value of a TimeSpan object is the number of ticks that equal the represented time interval. A tick is equal to 100 nanoseconds, or one ten-millionth of a second.