fawkes::Time Class Reference
A class for handling time. More...
#include <utils/time/time.h>
Public Member Functions | |
| Time () | |
| Constructor. | |
| Time (const timeval *tv) | |
| Constructor. | |
| Time (long sec, long usec, Clock *clock=0) | |
| Constructor. | |
| Time (long ms) | |
| Constructor. | |
| Time (float sec) | |
| Constructor. | |
| Time (Clock *clock) | |
| Constructor. | |
| Time (const Time &t) | |
| Copy constructor. | |
| ~Time () | |
| Destructor. | |
| float | in_sec () const |
| Convet time to seconds. | |
| long | in_msec () const |
| Convert the stored time into milli-seconds. | |
| long | in_usec () const |
| Convert the stored time into micro-seconds. | |
| const timeval * | get_timeval () const |
| Obtain the timeval where the time is stored. | |
| void | set_time (const timeval *tv) |
| Sets the time. | |
| void | set_time (long int sec, long int usec) |
| Sets the time. | |
| void | set_time (long ms) |
| Sets the time. | |
| void | set_time (float sec) |
| Sets the time. | |
| void | set_time (const Time &t) |
| Set time to given time. | |
| void | set_time (const Time *t) |
| Set time to given time. | |
| void | add (float seconds) |
| Add seconds. | |
| Time & | stamp () |
| Set this time to the current time. | |
| Time & | stamp_systime () |
| Set this time to the current system time. | |
| Time | operator+ (const float sec) const |
| Operator that adds times. | |
| Time | operator+ (const Time &t) const |
| Operator that adds times. | |
| Time | operator+ (const Time *t) const |
| Operator that adds times. | |
| Time | operator- (const Time &t) const |
| Operator that substracts one Time from another. | |
| float | operator- (const Time *t) const |
| Operator that substracts one Time from another. | |
| Time & | operator+= (const long int usec) |
| += operator | |
| Time & | operator+= (const Time &t) |
| += operator | |
| Time & | operator+= (const float sec) |
| += operator for float seconds | |
| Time & | operator-= (const Time &t) |
| -= operator. | |
| Time & | operator= (const Time &t) |
| Assign operator. | |
| void | wait () |
| Wait (sleep) for this time. | |
| void | wait_systime () |
| Wait (sleep) for this system time. | |
| const char * | str (bool utc=false) |
| Output function. | |
| void | str_r (char *s, bool utc=false) |
| Output function. | |
Static Public Attributes | |
| static const unsigned int | TIMESTR_SIZE = 26 |
| Maximum size of string returned by str() and the minimum size of the string passwd to str_r(). | |
Friends | |
| class | Clock |
Detailed Description
A class for handling time.
Definition at line 80 of file time.h.
Constructor & Destructor Documentation
| fawkes::Time::Time | ( | ) |
Constructor.
Sets time to the current time.
Definition at line 57 of file time.cpp.
References fawkes::Clock::get_time(), and fawkes::Clock::instance().
| fawkes::Time::Time | ( | const timeval * | tv | ) |
Constructor.
Sets time to the given time.
- Parameters:
-
tv the Time object is initialized with the time given in this timeval
Definition at line 69 of file time.cpp.
References fawkes::Clock::instance().
| fawkes::Time::Time | ( | long | sec, | |
| long | usec, | |||
| Clock * | clock = 0 | |||
| ) |
Constructor.
Sets time to the given time. Basically the same as setting from a timeval struct but the components are given separately.
- Parameters:
-
sec time in seconds since the epoch (or time range) usec fractions in microseconds added to sec clock optional clock to use, if NULL Clock::instance() will be used
Definition at line 85 of file time.cpp.
References fawkes::Clock::instance().
| fawkes::Time::Time | ( | long | ms | ) |
Constructor.
Sets time to given number of ms, use for time range.
- Parameters:
-
ms the Time object is initialized to the time given in milli-seconds
Definition at line 102 of file time.cpp.
References fawkes::Clock::instance().
| fawkes::Time::Time | ( | float | s | ) |
Constructor.
Sets time to given number of ms, use for time range.
- Parameters:
-
s the Time object is initialized to the time given in seconds
Definition at line 118 of file time.cpp.
References fawkes::Clock::instance().
| fawkes::Time::Time | ( | Clock * | clock | ) |
Constructor.
This constructor uses the supplied clock for setting the time. The time is set to the current time.
- Parameters:
-
clock clock
Definition at line 135 of file time.cpp.
References fawkes::Clock::get_time().
| fawkes::Time::Time | ( | const Time & | t | ) |
Copy constructor.
- Parameters:
-
t time to copy
Definition at line 146 of file time.cpp.
References TIMESTR_SIZE.
Member Function Documentation
| void fawkes::Time::add | ( | float | seconds | ) |
Add seconds.
The effect is equivalent to operator+=(const float sec), but this can be used when the operator is not available (i.e. wrapper languages) and it does not return itself.
- Parameters:
-
seconds time in seconds to add
| const timeval * fawkes::Time::get_timeval | ( | ) | const |
Obtain the timeval where the time is stored.
- Returns:
- a const pointer to the timeval where the time is stored
Definition at line 204 of file time.cpp.
Referenced by fawkes::Clock::ext_to_realtime(), fawkes::SimulatorTimeSource::get_time(), and SharedMemoryImageBuffer::set_capture_time().
| long fawkes::Time::in_msec | ( | ) | const |
Convert the stored time into milli-seconds.
- Returns:
- the time in milli-seconds
Definition at line 184 of file time.cpp.
Referenced by fawkes::WorldInfoDataContainer::check_timeout(), and XabslEngineThread::current_time().
| float fawkes::Time::in_sec | ( | ) | const |
Convet time to seconds.
Convert the stored time in a floating point number representing the number of seconds. For a time the integral part is the number of seconds since the epoch, for ranges you get the value as a float second.
- Returns:
- the time in seconds
Definition at line 174 of file time.cpp.
Referenced by fawkes::SimulatorTimeSource::conv_to_realtime().
| long fawkes::Time::in_usec | ( | ) | const |
Convert the stored time into micro-seconds.
- Returns:
- the time in micro-seconds
Definition at line 194 of file time.cpp.
Referenced by wait(), and wait_systime().
| Time fawkes::Time::operator+ | ( | const float | sec | ) | const |
| Time & fawkes::Time::operator+= | ( | const float | sec | ) |
| Time & fawkes::Time::operator+= | ( | const long int | usec | ) |
| float fawkes::Time::operator- | ( | const Time * | t | ) | const |
Operator that substracts one Time from another.
- Parameters:
-
t the Time that is substracted
- Returns:
- the difference
Definition at line 376 of file time.cpp.
References fawkes::time_diff_sec().
| void fawkes::Time::set_time | ( | const Time * | t | ) |
| void fawkes::Time::set_time | ( | const Time & | t | ) |
| void fawkes::Time::set_time | ( | float | s | ) |
| void fawkes::Time::set_time | ( | long | ms | ) |
| void fawkes::Time::set_time | ( | long int | sec, | |
| long int | usec | |||
| ) |
| void fawkes::Time::set_time | ( | const timeval * | tv | ) |
Sets the time.
- Parameters:
-
tv set the time to this value
Definition at line 214 of file time.cpp.
Referenced by V4L2Camera::capture(), SharedMemoryCamera::capture(), fawkes::Clock::ext_to_realtime(), fawkes::Watch::pause(), fawkes::Watch::reset(), fawkes::Watch::start(), and fawkes::Watch::stop().
| Time & fawkes::Time::stamp | ( | ) |
Set this time to the current time.
- Returns:
- reference to this instance
Definition at line 481 of file time.cpp.
References fawkes::Clock::get_time().
Referenced by V4L2Camera::capture(), fawkes::WorldInfoDataContainer::check_timeout(), TimeTrackerMainLoopThread::init(), XabslEngineThread::loop(), TimeTrackerMainLoopThread::loop(), fawkes::Clock::now(), and wait().
| Time & fawkes::Time::stamp_systime | ( | ) |
Set this time to the current system time.
This bypasses any possibly registered time source. Use with care and only where you really need the system time.
- Returns:
- reference to this instance
Definition at line 498 of file time.cpp.
References fawkes::Clock::get_systime().
Referenced by FawkesMainThread::loop(), and TimeTrackerMainLoopThread::loop().
| const char * fawkes::Time::str | ( | bool | utc = false |
) |
Output function.
- Returns:
- a pointer to a member containing a string represenation of the given time. If seconds is smaller than 1 billion it is assumed that this time represents a time range rather than a point in time and the time is formatted as seconds.microseconds, otherwise the time is formatted either via localtime() (if utc is false) or gmtime (if utc is true).
- Parameters:
-
utc true to get type formatted in UTC, otherwise local time
Definition at line 570 of file time.cpp.
References TIMESTR_SIZE.
| void fawkes::Time::str_r | ( | char * | s, | |
| bool | utc = false | |||
| ) |
Output function.
This is the thread-safe version of str().
- Parameters:
-
s pointer to a string of at least TIMESTR_SIZE bytes. utc true to get type formatted in UTC, otherwise local time
Definition at line 603 of file time.cpp.
References TIMESTR_SIZE.
| void fawkes::Time::wait | ( | ) |
| void fawkes::Time::wait_systime | ( | ) |
Wait (sleep) for this system time.
This waits for as much time as this instance provides. Unlike wait() this method calculates the time in system time, althouh the main clock may run slower for example in a simulation. Note that you have to make sure that you call this on a sensible time range. You probably do not want to wait for almost 40 years when passing a time point...
Definition at line 540 of file time.cpp.
References fawkes::Clock::get_systime(), and in_usec().
Referenced by FestivalSynthThread::say().
Member Data Documentation
const unsigned int fawkes::Time::TIMESTR_SIZE = 26 [static] |
The documentation for this class was generated from the following files:

