27#include <OnixS/CboeCFE/Trading/BOE/Compiler.h>
44 ONIXS_BATS_BOE_CONSTEXPR
47 return 86400000000000ll;
51 ONIXS_BATS_BOE_CONSTEXPR
54 return 3600000000000ll;
58 ONIXS_BATS_BOE_CONSTEXPR
65 ONIXS_BATS_BOE_CONSTEXPR
72 ONIXS_BATS_BOE_CONSTEXPR
79 ONIXS_BATS_BOE_CONSTEXPR
86 ONIXS_BATS_BOE_CONSTEXPR
93 ONIXS_BATS_BOE_CONSTEXPR
100 ONIXS_BATS_BOE_CONSTEXPR
107 ONIXS_BATS_BOE_CONSTEXPR
114 ONIXS_BATS_BOE_CONSTEXPR
300 ticks_ += other.ticks_;
309 ticks_ -= other.ticks_;
316 ONIXS_BATS_BOE_NOTHROW
318 std::swap(ticks_, other.ticks_);
368 ONIXS_CBOE_CFE_BOE_API
373 ONIXS_CBOE_CFE_BOE_API
378 ONIXS_CBOE_CFE_BOE_API
423 throw std::invalid_argument(
424 "Unknown timespan format pattern specified. ");
438 toStr(str, timeSpan, format);
501 ONIXS_CBOE_CFE_BOE_API
506 ONIXS_CBOE_CFE_BOE_API
513 Ticks ticks = 0) ONIXS_BATS_BOE_NOTHROW
542 : sinceEpoch_(other.sinceEpoch_)
633 ONIXS_BATS_BOE_NOTHROW
643 sinceEpoch_ = other.sinceEpoch_;
663 ONIXS_CBOE_CFE_BOE_API
671 ONIXS_CBOE_CFE_BOE_API
800 ONIXS_CBOE_CFE_BOE_API
809 ONIXS_CBOE_CFE_BOE_API
818 ONIXS_CBOE_CFE_BOE_API
827 ONIXS_CBOE_CFE_BOE_API
855 ONIXS_CBOE_CFE_BOE_API
873 toStr(str, timestamp, format);
879 ONIXS_CBOE_CFE_BOE_API
890 const std::string& str)
894 ts, str.c_str(), str.size());
Milliseconds milliseconds() const
TimeSpan(Days days, Hours hours, Minutes minutes, Seconds seconds, Nanoseconds nanoseconds)
Int32 Milliseconds
Integral type for number of milliseconds.
Int32 Minutes
Integral type for number of minutes.
Nanoseconds nanoseconds() const
void swap(TimeSpan &other) ONIXS_BATS_BOE_NOTHROW
Exchanges with given instance.
Int32 Nanoseconds
Integral type for number of nanoseconds.
Int32 Seconds
Integral type for number of seconds.
TimeSpan & operator+=(const TimeSpan &other)
Adds time interval to current one.
TimeSpan(Ticks ticks=0) ONIXS_BATS_BOE_NOTHROW
Initializes timespan from given number of ticks.
Microseconds microseconds() const
Int32 Microseconds
Integral type for number of microseconds.
Int32 Hours
Integral type for number of hours.
Int32 Days
Integral type for number of days.
TimeSpan & operator-=(const TimeSpan &other)
Subtracts time interval from current one.
Int64 Ticks
Integral type presenting internal ticks.
TimeSpan(Hours hours, Minutes minutes, Seconds seconds, Nanoseconds nanoseconds)
Represents time point without time-zone information.
Microsecond microsecond() const
Microsecond component of given time point.
Month month() const
Month component of given time point.
Year year() const
Year component of given time point.
Timestamp(const Timestamp &other)
Initializes as copy of other instance.
Day day() const
Day component of given time point.
UInt32 Hour
Integral type presenting hour component.
static ONIXS_CBOE_CFE_BOE_API Timestamp utcNow()
Returns current UTC time.
UInt32 Minute
Integral type presenting minute component.
Minute minute() const
Minute component of given time point.
Hour hour() const
Hour component of given time point.
OnixS::CboeCFE::Trading::BOE::Month::Enum Month
Type presenting month component.
UInt32 Millisecond
Integral type presenting millisecond component.
Nanosecond nanosecond() const
Nanosecond component of given time point.
Timestamp date() const
Timestamp without a time part.
static ONIXS_CBOE_CFE_BOE_API Timestamp now()
Returns current local time.
UInt64 Ticks
Integral type storing internal ticks.
TimeSpan time() const
Time part of timestamp.
Second second() const
Second component of given time point.
UInt32 Microsecond
Integral type presenting microsecond component.
Timestamp(Year year, Month month, Day day, Hour hour=0, Minute minute=0, Second second=0, Nanosecond nanosecond=0)
void swap(Timestamp &other)
Exchanges value with other instance.
UInt32 Second
Integral type presenting second component.
UInt32 Day
Integral type presenting day component.
Timestamp & operator=(const Timestamp &other)
Reinitializes as copy of given instance.
UInt32 Nanosecond
Integral type presenting nanosecond component.
UInt32 Year
Integral type presenting year component.
Millisecond millisecond() const
Millisecond component of given time point.
Ticks sinceEpoch() const ONIXS_BATS_BOE_NOTHROW
Number of nanoseconds since the Epoch (01-01-1970).
Timestamp(Ticks ticks=0) ONIXS_BATS_BOE_NOTHROW
Initializes from number of ticks since epoch.
bool operator>(const FixedPointDecimal< Mantissa, Exponent > &left, const FixedPointDecimal< Mantissa, Exponent > &right)
Compares two fixed-point decimals.
ONIXS_CBOE_CFE_BOE_API void toStrAsYYYYMMDDHHMMSSnsec(std::string &, Timestamp)
Serializes timestamp in YYYYMMDDHHMMSSnsec format.
bool operator!=(const FixedPointDecimal< Mantissa, Exponent > &left, const FixedPointDecimal< Mantissa, Exponent > &right)
Compares two fixed-point decimals.
bool operator<=(const FixedPointDecimal< Mantissa, Exponent > &left, const FixedPointDecimal< Mantissa, Exponent > &right)
Compares two fixed-point decimals.
void toStr(std::string &str, const FixedPointDecimal< Mantissa, Exponent > &number)
Serializes fixed-point decimal into a string.
bool operator==(const FixedPointDecimal< Mantissa, Exponent > &left, const FixedPointDecimal< Mantissa, Exponent > &right)
Compares two fixed-point decimals.
ONIXS_CBOE_CFE_BOE_API bool fromStr(Timestamp &, const char *, size_t)
De-serializes a timestamp from the given string.
Timestamp operator+(const Timestamp ×tamp, const TimeSpan &timeSpan)
Adds time interval to given time point.
ONIXS_CBOE_CFE_BOE_API void toStrAsYYYYMMDD(std::string &, Timestamp)
Serializes timestamp in YYYYMMDD format.
bool operator>=(const FixedPointDecimal< Mantissa, Exponent > &left, const FixedPointDecimal< Mantissa, Exponent > &right)
Compares two fixed-point decimals.
ONIXS_CBOE_CFE_BOE_API void toStrAsYYYYMMDDHHMMSS(std::string &, Timestamp)
Serializes timestamp in YYYYMMDDHHMMSS format.
ONIXS_CBOE_CFE_BOE_API void toStrAsHHMMSSmsec(std::string &, TimeSpan)
bool operator<(const FixedPointDecimal< Mantissa, Exponent > &left, const FixedPointDecimal< Mantissa, Exponent > &right)
Compares two fixed-point decimals.
ONIXS_CBOE_CFE_BOE_API void toStrAsSDHHMMSSnsec(std::string &, TimeSpan)
ONIXS_CBOE_CFE_BOE_API void toStrAsHHMMSS(std::string &, TimeSpan)
Timestamp operator-(const Timestamp ×tamp, const TimeSpan &timeSpan)
Subtracts time interval from given time point.
ONIXS_CBOE_CFE_BOE_API void toStrAsYYYYMMDDHHMMSSmsec(std::string &, Timestamp)
Serializes timestamp in YYYYMMDDHHMMSSmsec format.
Identifies months in year.
Miscellaneous time characteristics.
static ONIXS_BATS_BOE_CONSTEXPR Int64 nanosecondsPerHour()
Returns number of nanoseconds in single hour.
static ONIXS_BATS_BOE_CONSTEXPR Int32 minutesPerHour()
Returns number of minutes in single hour.
static ONIXS_BATS_BOE_CONSTEXPR Int64 nanosecondsPerMinute()
Returns number of nanoseconds in single minute.
static ONIXS_BATS_BOE_CONSTEXPR Int32 nanosecondsPerMicrosecond()
Returns number of nanoseconds in single microsecond.
static ONIXS_BATS_BOE_CONSTEXPR Int32 nanosecondsPerMillisecond()
Returns number of nanoseconds in single millisecond.
static ONIXS_BATS_BOE_CONSTEXPR Int32 nanosecondsPerSecond()
Returns number of nanoseconds in single second.
static ONIXS_BATS_BOE_CONSTEXPR Int32 microsecondsPerSecond()
Returns number of microseconds in single second.
static ONIXS_BATS_BOE_CONSTEXPR Int32 secondsPerMinute()
Returns number of seconds in single minute.
static ONIXS_BATS_BOE_CONSTEXPR Int64 nanosecondsPerDay()
Returns number of nanoseconds in single day.
static ONIXS_BATS_BOE_CONSTEXPR Int32 hoursPerDay()
Returns number of hours in single day.
static ONIXS_BATS_BOE_CONSTEXPR Int32 millisecondsPerSecond()
Returns number of milliseconds in single second.