OnixS C++ CME MDP Premium Market Data Handler 5.10.2
Users' manual and API documentation
Loading...
Searching...
No Matches
Decimal.Operations.h File Reference

Go to the source code of this file.

Namespaces

namespace  OnixS
namespace  OnixS::CME
namespace  OnixS::CME::MDH
namespace  OnixS::CME::MDH::Messaging
namespace  OnixS::CME::MDH::Messaging::details

Typedefs

typedef Int64 DecimalMantissa
typedef Int32 DecimalExponent
typedef FloatingPointDecimal< DecimalMantissa, DecimalExponentDecimal

Functions

template<class MantissaType>
std::enable_if< std::numeric_limits< MantissaType >::is_signed, bool >::type isMantissaInRange (Decimal::Mantissa value) noexcept
template<class MantissaType>
std::enable_if<!std::numeric_limits< MantissaType >::is_signed &&(sizeof(MantissaType)< sizeof(Decimal::Mantissa)), bool >::type isMantissaInRange (Decimal::Mantissa value) noexcept
template<class MantissaType>
std::enable_if<!std::numeric_limits< MantissaType >::is_signed &&(sizeof(MantissaType)>=sizeof(Decimal::Mantissa)), bool >::type isMantissaInRange (Decimal::Mantissa value) noexcept
template<class ExponentType>
std::enable_if< std::numeric_limits< ExponentType >::is_signed &&(sizeof(ExponentType)< sizeof(Decimal::Exponent)), bool >::type isExponentInRange (Decimal::Exponent value) noexcept
template<class ExponentType>
std::enable_if< std::numeric_limits< ExponentType >::is_signed &&(sizeof(ExponentType)>=sizeof(Decimal::Exponent)), bool >::type isExponentInRange (Decimal::Exponent) noexcept
template<class ExponentType>
std::enable_if<!std::numeric_limits< ExponentType >::is_signed &&(sizeof(ExponentType)< sizeof(Decimal::Exponent)), bool >::type isExponentInRange (Decimal::Exponent value) noexcept
template<class ExponentType>
std::enable_if<!std::numeric_limits< ExponentType >::is_signed &&(sizeof(ExponentType)>=sizeof(Decimal::Exponent)), bool >::type isExponentInRange (Decimal::Exponent value) noexcept
bool quantize (const Decimal &operand, Int32 exponent, Decimal &quantized)
Decimal quantize (const Decimal &operand, Int32 exponent)
template<class MantissaType>
MantissaType quantizedMantissa (const Decimal &operand, Int32 exponent)
template<class MantissaType, class ExponentType>
void convert (FixedPointDecimal< MantissaType, ExponentType > &res, const Decimal &number)
template<class MantissaType, class ExponentType>
void convert (FloatingPointDecimal< MantissaType, ExponentType > &res, const Decimal &number)
template<class DecimalT>
std::enable_if< details::IsDecimal< DecimalT >::value, DecimalT >::type convert (const Decimal &number)
bool fromStr (Decimal &, const Char *, size_t)
bool fromStr (Decimal &value, const std::string &str)
template<class Mantissa, class Exponent>
void toStr (std::string &str, const FloatingPointDecimal< Mantissa, Exponent > &number)
template<class Mantissa, class Exponent>
void toStr (std::string &str, const FixedPointDecimal< Mantissa, Exponent > &number)
template<class Mantissa, class Exponent>
std::string toStr (const FloatingPointDecimal< Mantissa, Exponent > &number)
template<class Mantissa, class Exponent>
std::string toStr (const FixedPointDecimal< Mantissa, Exponent > &number)
template<class Mantissa, class Exponent>
bool operator== (const FixedPointDecimal< Mantissa, Exponent > &left, const FixedPointDecimal< Mantissa, Exponent > &right)
template<class Mantissa, class Exponent>
bool operator!= (const FixedPointDecimal< Mantissa, Exponent > &left, const FixedPointDecimal< Mantissa, Exponent > &right)
template<class Mantissa, class Exponent>
bool operator< (const FixedPointDecimal< Mantissa, Exponent > &left, const FixedPointDecimal< Mantissa, Exponent > &right)
template<class Mantissa, class Exponent>
bool operator> (const FixedPointDecimal< Mantissa, Exponent > &left, const FixedPointDecimal< Mantissa, Exponent > &right)
template<class Mantissa, class Exponent>
bool operator<= (const FixedPointDecimal< Mantissa, Exponent > &left, const FixedPointDecimal< Mantissa, Exponent > &right)
template<class Mantissa, class Exponent>
bool operator>= (const FixedPointDecimal< Mantissa, Exponent > &left, const FixedPointDecimal< Mantissa, Exponent > &right)
template<class Decimal1, class Decimal2>
std::enable_if< details::AreBothDecimals< Decimal1, Decimal2 >::value, bool >::type operator== (const Decimal1 &left, const Decimal2 &right)
template<class Decimal1, class Decimal2>
std::enable_if< details::AreBothDecimals< Decimal1, Decimal2 >::value, bool >::type operator!= (const Decimal1 &left, const Decimal2 &right)
template<class Decimal1, class Decimal2>
std::enable_if< details::AreBothDecimals< Decimal1, Decimal2 >::value, bool >::type operator> (const Decimal1 &left, const Decimal2 &right)
template<class Decimal1, class Decimal2>
std::enable_if< details::AreBothDecimals< Decimal1, Decimal2 >::value, bool >::type operator>= (const Decimal1 &left, const Decimal2 &right)
template<class Decimal1, class Decimal2>
std::enable_if< details::AreBothDecimals< Decimal1, Decimal2 >::value, bool >::type operator< (const Decimal1 &left, const Decimal2 &right)
template<class Decimal1, class Decimal2>
std::enable_if< details::AreBothDecimals< Decimal1, Decimal2 >::value, bool >::type operator<= (const Decimal1 &left, const Decimal2 &right)
template<class Mantissa, class Exponent>
std::ostream & operator<< (std::ostream &stream, const FixedPointDecimal< Mantissa, Exponent > &value)
template<class Mantissa, class Exponent>
std::ostream & operator<< (std::ostream &stream, const FloatingPointDecimal< Mantissa, Exponent > &value)