#include <Timer.h>
Public Member Functions | |
Timer () | |
Default constructor. | |
Timer (const EventHandler *eh_, const TimeVal &tm_, const TimeVal &delta_, const std::string &name_) | |
Constructor used by the TimerQueue. | |
Timer (const Timer &t_) | |
Copy constructor. | |
~Timer () | |
Destructor: do-nothing. | |
Timer & | operator= (const Timer &t_) |
Assignment operator. | |
bool | operator< (const Timer &t_) const |
Less-that by time. | |
bool | operator== (const Timer &t_) const |
Equal by time. | |
EventHandler * | getHandler () const |
Get EventHandler pointer. | |
const TimeVal & | getExpirationTime () const |
Get Expiration Time. | |
const TimeVal & | getDeltaTime () const |
Get Delta time. | |
void | rescheduleExpirationTime () |
Reschedule expiration time with Delta value. | |
void | dump (void) |
Dump contents to logfile. | |
void | set_id (const std::string &id_) |
Set Timer ID. | |
std::string | get_id () const |
Retrieve Timer ID. | |
Private Attributes | |
EventHandler * | m_eh |
Pointer to EventHandler. | |
TimeVal | m_timer |
When the timer should be triggered. | |
TimeVal | m_delta |
Absolute value used when Reactor needs to reschedule the timer. | |
std::string | m_id |
Timer's ID. |
Definition at line 35 of file Timer.h.
ASSA::Timer::Timer | ( | ) | [inline] |
ASSA::Timer::Timer | ( | const EventHandler * | eh_, | |
const TimeVal & | tm_, | |||
const TimeVal & | delta_, | |||
const std::string & | name_ | |||
) | [inline] |
Constructor used by the TimerQueue.
eh_ | EventHandler to call upon timeout | |
tm_ | Time of the day to expire the timer. | |
delta_ | Absolute timeout value. | |
name_ | Timer name |
Definition at line 118 of file Timer.h.
References trace.
00120 : m_eh ((EventHandler*) eh_), m_timer (tm_), m_delta (delta_), m_id (name_) 00121 { 00122 trace("Timer::Timer(EH*, TV&)"); 00123 }
ASSA::Timer::Timer | ( | const Timer & | t_ | ) | [inline] |
ASSA::Timer::~Timer | ( | ) | [inline] |
void ASSA::Timer::dump | ( | void | ) | [inline] |
Dump contents to logfile.
Definition at line 177 of file Timer.h.
References DL, ASSA::TimeVal::fmt_mm_ss_mls(), ASSA::TimeVal::fmtString(), ASSA::EventHandler::get_id(), get_id(), m_delta, m_eh, m_timer, and ASSA::REACT.
Referenced by ASSA::PriorityQueue_STLPQ< T, Compare >::dump(), and ASSA::TimerQueue::expire().
00178 { 00179 DL((REACT,"Timer %s (EH=%s) expires at %s (delta=%s)\n", 00180 get_id ().c_str (), 00181 m_eh->get_id ().c_str (), 00182 m_timer.fmtString ().c_str(), 00183 m_delta.fmt_mm_ss_mls ().c_str())); 00184 }
std::string ASSA::Timer::get_id | ( | ) | const [inline] |
const TimeVal& ASSA::Timer::getDeltaTime | ( | ) | const [inline] |
const TimeVal& ASSA::Timer::getExpirationTime | ( | ) | const [inline] |
Get Expiration Time.
Definition at line 71 of file Timer.h.
References m_timer.
Referenced by ASSA::TimerQueue::expire().
00071 { return m_timer; }
EventHandler* ASSA::Timer::getHandler | ( | ) | const [inline] |
Get EventHandler pointer.
Definition at line 68 of file Timer.h.
References m_eh.
Referenced by ASSA::TimerQueue::expire(), and ASSA::PriorityQueue_STLPQ< T, Compare >::remove().
00068 { return m_eh; }
bool ASSA::Timer::operator< | ( | const Timer & | t_ | ) | const [inline] |
bool ASSA::Timer::operator== | ( | const Timer & | t_ | ) | const [inline] |
void ASSA::Timer::rescheduleExpirationTime | ( | ) | [inline] |
Reschedule expiration time with Delta value.
Definition at line 169 of file Timer.h.
References ASSA::TimeVal::gettimeofday(), m_delta, and m_timer.
00170 { 00171 TimeVal now (TimeVal::gettimeofday ()); 00172 m_timer = now + m_delta; 00173 }
void ASSA::Timer::set_id | ( | const std::string & | id_ | ) | [inline] |
TimeVal ASSA::Timer::m_delta [private] |
Absolute value used when Reactor needs to reschedule the timer.
Definition at line 99 of file Timer.h.
Referenced by dump(), getDeltaTime(), operator=(), and rescheduleExpirationTime().
EventHandler* ASSA::Timer::m_eh [private] |
Pointer to EventHandler.
Definition at line 93 of file Timer.h.
Referenced by dump(), getHandler(), and operator=().
std::string ASSA::Timer::m_id [private] |
Timer's ID.
Definition at line 102 of file Timer.h.
Referenced by get_id(), operator=(), and set_id().
TimeVal ASSA::Timer::m_timer [private] |
When the timer should be triggered.
Definition at line 96 of file Timer.h.
Referenced by dump(), getExpirationTime(), operator<(), operator=(), operator==(), and rescheduleExpirationTime().