OnixS ICE iMpact Multicast Price Feed Handler C++ library 8.18.0
API documentation
Loading...
Searching...
No Matches
TimeSpan Class Reference

Public Member Functions

 TimeSpan ()
 TimeSpan (int hours, int minutes, int seconds, int nanoseconds=0)
 TimeSpan (int days, int hours, int minutes, int seconds, int nanoseconds)
 TimeSpan (long long totalSeconds, int nanoseconds)
 TimeSpan (const TimeSpan &other)
long long totalSeconds () const
int days () const
int hours () const
int minutes () const
int seconds () const
int milliseconds () const
int microseconds () const
int nanoseconds () const
bool operator== (const TimeSpan &other) const
bool operator!= (const TimeSpan &other) const
bool operator< (const TimeSpan &other) const
bool operator> (const TimeSpan &other) const
TimeSpanoperator+= (const TimeSpan &other)
TimeSpanoperator-= (const TimeSpan &other)
TimeSpanoperator= (const TimeSpan &other)
void toString (std::string &str, TimeSpanFormat format=TimeSpanFormats::SDHHMMSSnsec) const
std::string toString (TimeSpanFormat format=TimeSpanFormats::SDHHMMSSnsec) const

Static Public Member Functions

static TimeSpan deserialize (const std::string &str)
static TimeSpan deserialize (unsigned long long presentation, TimeSpanFormat format)

Static Public Attributes

static const TimeSpan Zero

Detailed Description

Represents time interval. Used primarily to present time-only stamps and to measure time intervals between two timestamps.

Definition at line 52 of file Time.h.

Constructor & Destructor Documentation

◆ TimeSpan() [1/5]

TimeSpan ( )

Initializes zero span.

◆ TimeSpan() [2/5]

TimeSpan ( int hours,
int minutes,
int seconds,
int nanoseconds = 0 )

Initializes with given set of values. Input parameters are treated as quantities, but not as a time stamp. Therefore, there's no requirement to fit in a certain range like hours must fit into [0, 24) range. After initialization time span will be normalized.

◆ TimeSpan() [3/5]

TimeSpan ( int days,
int hours,
int minutes,
int seconds,
int nanoseconds )

Initializes with given set of values. Input parameters are treated as quantities, but not as a time stamp. Therefore, there's no requirement to fit in a certain range like hours must fit into [0, 24) range. After initialization time span will be normalized.

◆ TimeSpan() [4/5]

TimeSpan ( long long totalSeconds,
int nanoseconds )

Initializes time interval from total number seconds and its fractional (nanosecond) part.

◆ TimeSpan() [5/5]

TimeSpan ( const TimeSpan & other)

Initializes as clone of other instance.

Member Function Documentation

◆ days()

int days ( ) const

Days component of time interval. Whole number of days in time interval.

◆ deserialize() [1/2]

TimeSpan deserialize ( const std::string & str)
static

De-serializes time interval from its text presentation.

◆ deserialize() [2/2]

TimeSpan deserialize ( unsigned long long presentation,
TimeSpanFormat format )
static

De-serializes time-span from presentation as it's used by the ICE.

◆ hours()

int hours ( ) const

Hours component of time interval. Values are in range from -23 through 23.

◆ microseconds()

int microseconds ( ) const

Microseconds component of time interval. Values are in range from -999999 through 999999.

◆ milliseconds()

int milliseconds ( ) const

Milliseconds component of time interval. Values are in range from -999 through 999.

◆ minutes()

int minutes ( ) const

Minutes component of time interval. Values are in range from -59 through 59.

◆ nanoseconds()

int nanoseconds ( ) const
inline

Nanoseconds component of time interval. Values are in range from -999999999 through 999999999.

Definition at line 160 of file Time.h.

◆ operator!=()

bool operator!= ( const TimeSpan & other) const

Compares with other instance for in-equality.

◆ operator+=()

TimeSpan & operator+= ( const TimeSpan & other)

Adds time interval to current one.

◆ operator-=()

TimeSpan & operator-= ( const TimeSpan & other)

Subtracts time interval from current one.

◆ operator<()

bool operator< ( const TimeSpan & other) const

Checks whether time interval less than other one.

◆ operator=()

TimeSpan & operator= ( const TimeSpan & other)

Re-assigns time interval from other one.

◆ operator==()

bool operator== ( const TimeSpan & other) const

Compares with other instance for equality.

◆ operator>()

bool operator> ( const TimeSpan & other) const

Checks whether time interval greater than other one.

◆ seconds()

int seconds ( ) const

Seconds component of time interval. Values are in range from -59 through 59.

◆ toString() [1/2]

void toString ( std::string & str,
TimeSpanFormat format = TimeSpanFormats::SDHHMMSSnsec ) const

Serializes time stamp into text presentation using specified time-span presentation format.

◆ toString() [2/2]

std::string toString ( TimeSpanFormat format = TimeSpanFormats::SDHHMMSSnsec) const
inline

Serializes time stamp into text presentation using specified time-span presentation format.

Definition at line 165 of file Time.h.

◆ totalSeconds()

long long totalSeconds ( ) const
inline

Whole number of seconds in time interval.

Definition at line 155 of file Time.h.

Member Data Documentation

◆ Zero

const TimeSpan Zero
static

Time interval of zero length.

Definition at line 148 of file Time.h.