OnixS C++ Eurex T7 Market and Reference Data (EMDI, MDI, RDI, EOBI) Handlers 18.2.0
API documentation
Loading...
Searching...
No Matches
Decimal Class Reference

Public Member Functions

 Decimal (DecimalMantissa mantissa=0, DecimalExponent exponent=0)
 Decimal (int)
 Decimal (Double value)
 Decimal (Double value, size_t precision)
 Decimal (const Decimal &other)
DecimalMantissa mantissa () const
void mantissa (DecimalMantissa)
DecimalExponent exponent () const
void exponent (DecimalExponent)
bool operator== (const Decimal &) const
bool operator!= (const Decimal &) const
 operator Int32 () const
 operator UInt32 () const
 operator Int64 () const
 operator UInt64 () const
 operator Double () const
bool toNumber (Int32 &) const
bool toNumber (UInt32 &) const
bool toNumber (Int64 &) const
bool toNumber (UInt64 &) const
bool toNumber (Double &) const
void toString (std::string &) const
std::string toString () const
Decimaloperator= (const Decimal &other)

Static Public Member Functions

static bool tryParse (const char *buffer, size_t bufferSize, Decimal &)
static Decimal parse (const char *buffer, size_t bufferSize)

Detailed Description

Definition at line 63 of file Numeric.h.

Constructor & Destructor Documentation

◆ Decimal() [1/5]

Decimal ( DecimalMantissa mantissa = 0,
DecimalExponent exponent = 0 )

Initializes instance from compound components.

◆ Decimal() [2/5]

Decimal ( int )
explicit

◆ Decimal() [3/5]

Decimal ( Double value)
explicit

Converts from Double value using default conversion precision.

◆ Decimal() [4/5]

Decimal ( Double value,
size_t precision )

Converts Double value to decimal.

Parameters
valuedouble precision floating-point value.
precisiondefines conversion precision.

◆ Decimal() [5/5]

Decimal ( const Decimal & other)

Initializes as copy of given value.

Member Function Documentation

◆ exponent() [1/2]

DecimalExponent exponent ( ) const
inline

Returns exponent part of decimal.

Definition at line 214 of file Numeric.h.

◆ exponent() [2/2]

void exponent ( DecimalExponent value)
inline

Updates exponent part of decimal.

Definition at line 221 of file Numeric.h.

◆ mantissa() [1/2]

DecimalMantissa mantissa ( ) const
inline

Returns mantissa part of decimal.

Definition at line 199 of file Numeric.h.

◆ mantissa() [2/2]

void mantissa ( DecimalMantissa value)
inline

Updates mantissa part of decimal.

Definition at line 206 of file Numeric.h.

◆ operator Double()

operator Double ( ) const
inline

Casts to whole floating point as regular value is casted to a smaller precision.

Exceptions
domain_errorexception on failure.

Definition at line 276 of file Numeric.h.

◆ operator Int32()

operator Int32 ( ) const
inline

Casts to whole integer number as regular floating point value is casted.

Exceptions
domain_errorexception on failure.

Definition at line 228 of file Numeric.h.

◆ operator Int64()

operator Int64 ( ) const
inline

Casts to whole integer number as regular floating point value is casted.

Exceptions
domain_errorexception on failure.

Definition at line 252 of file Numeric.h.

◆ operator UInt32()

operator UInt32 ( ) const
inline

Casts to whole integer number as regular floating point value is casted.

Exceptions
domain_errorexception on failure.

Definition at line 240 of file Numeric.h.

◆ operator UInt64()

operator UInt64 ( ) const
inline

Casts to whole integer number as regular floating point value is casted.

Exceptions
domain_errorexception on failure.

Definition at line 264 of file Numeric.h.

◆ operator!=()

bool operator!= ( const Decimal & ) const

Compares two numbers.

◆ operator=()

Decimal & operator= ( const Decimal & other)

Reinitializes instance from another one.

◆ operator==()

bool operator== ( const Decimal & ) const

Compares two numbers.

◆ parse()

Decimal parse ( const char * buffer,
size_t bufferSize )
static

Parses decimal from string presentation.

Exceptions
std::exceptionon failure.

◆ toNumber() [1/5]

bool toNumber ( Double & ) const

Casts to floating point number.

Returns
false if conversion fails.

◆ toNumber() [2/5]

bool toNumber ( Int32 & ) const

Casts to whole integer number as regular floating point value is casted.

Returns
false if conversion fails.

◆ toNumber() [3/5]

bool toNumber ( Int64 & ) const

Casts to whole integer number as regular floating point value is casted.

Returns
false if conversion fails.

◆ toNumber() [4/5]

bool toNumber ( UInt32 & ) const

Casts to whole integer number as regular floating point value is casted.

Returns
false if conversion fails.

◆ toNumber() [5/5]

bool toNumber ( UInt64 & ) const

Casts to whole integer number as regular floating point value is casted.

Returns
false if conversion fails.

◆ toString() [1/2]

std::string toString ( ) const
inline

Returns text presentation of decimal.

Definition at line 289 of file Numeric.h.

◆ toString() [2/2]

void toString ( std::string & ) const

Appends text presentation to given string.

◆ tryParse()

bool tryParse ( const char * buffer,
size_t bufferSize,
Decimal &  )
static

Attempts to parse decimal value from its string/text presentation.

Returns
false on parsing failure.