Scroll to navigation

SbTime(3IV)() SbTime(3IV)()

NAME

SbTime — class for representation of a time

INHERITS FROM

SbTime

SYNOPSIS

#include <Inventor/SbTime.h>


Methods from class SbTime:


SbTime()

SbTime(double sec)

SbTime(int32_t sec, long usec)

SbTime(const struct timeval *tv)

static SbTime getTimeOfDay()

void setToTimeOfDay()

static SbTime zero()

static SbTime max()

void setValue(double sec)

void setValue(int32_t sec, long usec)

void setValue(const struct timeval *tv)

void setMsecValue(unsigned long msec)

double getValue() const

void getValue(int32_t &sec, long &usec) const

void getValue(struct timeval *tv) const

unsigned long getMsecValue() const

SbString format(const char *fmt = "%S.%i") const

SbString formatDate(const char *fmt = "%A, %D %r") const

SbTime operator +(const SbTime &t0, const SbTime &t1)

SbTime operator -(const SbTime &t0, const SbTime &t1)

SbTime & operator +=(const SbTime &tm)

SbTime & operator -=(const SbTime &tm)

SbTime operator -() const

SbTime operator *(double s, const SbTime &tm)

SbTime operator *(const SbTime &tm, double s)

SbTime operator /(const SbTime &tm, double s)

SbTime & operator *=(double s)

SbTime & operator /=(double s)

double operator /(const SbTime &tm) const

SbTime operator %(const SbTime &tm) const

int operator ==(const SbTime &tm) const

int operator !=(const SbTime &tm) const

SbBool operator <(const SbTime &tm) const

SbBool operator >(const SbTime &tm) const

SbBool operator <=(const SbTime &tm) const

SbBool operator >=(const SbTime &tm) const

DESCRIPTION

This class represents and performs operations on time. Operations may be done in seconds, seconds and microseconds, or using a struct timeval (defined in /usr/include/sys/time.h).

METHODS


SbTime()

SbTime(double sec)

SbTime(int32_t sec, long usec)

SbTime(const struct timeval *tv)

Constructors taking seconds, seconds and microseconds, or a struct timeval. NOTE that an integer parameter will not automatically cast to a double to invoke the constructor taking seconds; that is, SbTime(1) will result in a compilation error. SbTime(1.0) must be used instead. This is to avoid errors in upgrading from an earlier release, in which SbTime(1) had different semantics. In future releases, this distinction will be eliminated, and the effect of SbTime(1.0) and that of SbTime(1) will be identical.



static SbTime getTimeOfDay()

Get the current time (seconds since Jan 1, 1970).



void setToTimeOfDay()

Set to the current time (seconds since Jan 1, 1970).



static SbTime zero()

Get a zero time.



static SbTime max()

Get a time far, far into the future.



void setValue(double sec)

Set time from a double (in seconds).



void setValue(int32_t sec, long usec)

Set time from seconds + microseconds.



void setValue(const struct timeval *tv)

Set time from a struct timeval.



void setMsecValue(unsigned long msec)

Set time from milliseconds.



double getValue() const

Get time in seconds as a double.



void getValue(int32_t &sec, long &usec) const

Get time in seconds and microseconds.



void getValue(struct timeval *tv) const

Get time in a struct timeval.



unsigned long getMsecValue() const

Get time in milliseconds (for Xt).



SbString format(const char *fmt = "%S.%i") const

Convert to a string. The default format is seconds with 3 digits of fraction precision. fmt is a character string that consists of field descriptors and text characters, in a manner analogous to cftime (3C) and printf (3S). Each field descriptor consists of a % character followed by another character which specifies the replacement for the field descriptor. All other characters are copied from fmt into the result. The following field descriptors are supported:


% the `%' character D total number of days H total number of hours M total number of minutes S total number of seconds I total number of milliseconds U total number of microseconds h hours remaining after the days (00-23) m minutes remaining after the hours (00-59) s seconds remaining after the minutes (00-59) i milliseconds remaining after the seconds (000-999) u microseconds remaining after the seconds (000000-999999)

The uppercase descriptors are formatted with a leading `—' for negative times; the lowercase descriptors are formatted fixed width, with leading zeros. For example, a reasonable format string might be "elapsed time: %M minutes, %s seconds". The default value of fmt, "%S.%i", formats the time as seconds with 3 digits of fractional precision.



SbString formatDate(const char *fmt = "%A, %D %r") const

Convert to a date string, interpreting the time as seconds since Jan 1, 1970. The default format gives "Tuesday, 01/26/93 11:23:41 AM". See the cftime() reference page for explanation of the format string.



SbTime operator +(const SbTime &t0, const SbTime &t1)

SbTime operator -(const SbTime &t0, const SbTime &t1)

Addition and subtraction of two times.



SbTime & operator +=(const SbTime &tm)

SbTime & operator -=(const SbTime &tm)

Addition and subtraction of two times which modifies the time structure.



SbTime operator -() const

Unary negation.



SbTime operator *(double s, const SbTime &tm)

SbTime operator *(const SbTime &tm, double s)

SbTime operator /(const SbTime &tm, double s)

Multiplication and division by scalar.



SbTime & operator *=(double s)

SbTime & operator /=(double s)

Destructive multiplication and division by scalar.



double operator /(const SbTime &tm) const

Division by another time.



SbTime operator %(const SbTime &tm) const

Modulus for two times (remainder when time1 is divided by time2).



int operator ==(const SbTime &tm) const

int operator !=(const SbTime &tm) const

Equality operators.



SbBool operator <(const SbTime &tm) const

SbBool operator >(const SbTime &tm) const

SbBool operator <=(const SbTime &tm) const

SbBool operator >=(const SbTime &tm) const

Relational operators.


SEE ALSO

cftime