Provided by: inventor-doc_2.1.5-10-18_all bug

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

                                                                                    SbTime(3IV)()