#include <Timer_Queue_T.h>
Collaboration diagram for ACE_Timer_Node_T< TYPE >:

Public Types | |
| typedef ACE_Timer_Node_Dispatch_Info_T< TYPE > | DISPATCH_INFO |
| Useful typedef .. | |
Public Member Functions | |
| ACE_Timer_Node_T (void) | |
| Default constructor. | |
| ~ACE_Timer_Node_T (void) | |
| Destructor. | |
| void | set (const TYPE &type, const void *a, const ACE_Time_Value &t, const ACE_Time_Value &i, ACE_Timer_Node_T< TYPE > *n, long timer_id) |
| Singly linked list. | |
| void | set (const TYPE &type, const void *a, const ACE_Time_Value &t, const ACE_Time_Value &i, ACE_Timer_Node_T< TYPE > *p, ACE_Timer_Node_T< TYPE > *n, long timer_id) |
| Doubly linked list version. | |
| TYPE & | get_type (void) |
| Get the type. | |
| void | set_type (TYPE &type) |
| Set the type. | |
| const void * | get_act (void) |
| Get the asynchronous completion token. | |
| void | set_act (void *act) |
| Set the asynchronous completion token. | |
| const ACE_Time_Value & | get_timer_value (void) const |
| Get the timer value. | |
| void | set_timer_value (const ACE_Time_Value &timer_value) |
| Set the timer value. | |
| const ACE_Time_Value & | get_interval (void) const |
| Get the timer interval. | |
| void | set_interval (const ACE_Time_Value &interval) |
| Set the timer interval. | |
| ACE_Timer_Node_T< TYPE > * | get_prev (void) |
| Get the previous pointer. | |
| void | set_prev (ACE_Timer_Node_T< TYPE > *prev) |
| Set the previous pointer. | |
| ACE_Timer_Node_T< TYPE > * | get_next (void) |
| Get the next pointer. | |
| void | set_next (ACE_Timer_Node_T< TYPE > *next) |
| Set the next pointer. | |
| long | get_timer_id (void) const |
| Get the timer_id. | |
| void | set_timer_id (long timer_id) |
| Set the timer_id. | |
| void | get_dispatch_info (ACE_Timer_Node_Dispatch_Info_T< TYPE > &info) |
| void | dump (void) const |
| Dump the state of an TYPE. | |
Private Attributes | |
| TYPE | type_ |
| Type of object stored in the Queue. | |
| const void * | act_ |
| Asynchronous completion token associated with the timer. | |
| ACE_Time_Value | timer_value_ |
| Time until the timer expires. | |
| ACE_Time_Value | interval_ |
| ACE_Timer_Node_T< TYPE > * | prev_ |
| Pointer to previous timer. | |
| ACE_Timer_Node_T< TYPE > * | next_ |
| Pointer to next timer. | |
| long | timer_id_ |
| Id of this timer (used to cancel timers before they expire). | |
Definition at line 56 of file Timer_Queue_T.h.
|
|||||
|
Useful typedef ..
Definition at line 66 of file Timer_Queue_T.h. |
|
||||||||||
|
Default constructor.
Definition at line 49 of file Timer_Queue_T.cpp. References ACE_TRACE.
00050 {
00051 ACE_TRACE ("ACE_Timer_Node_T::ACE_Timer_Node_T");
00052 }
|
|
||||||||||
|
Destructor.
Definition at line 55 of file Timer_Queue_T.cpp. References ACE_TRACE.
00056 {
00057 ACE_TRACE ("ACE_Timer_Node_T::~ACE_Timer_Node_T");
00058 }
|
|
||||||||||
|
Dump the state of an TYPE.
Definition at line 33 of file Timer_Queue_T.cpp. References ACE_BEGIN_DUMP, ACE_DEBUG, ACE_END_DUMP, ACE_LIB_TEXT, ACE_TRACE, ACE_Time_Value::dump(), LM_DEBUG, and ACE_Timer_Node_T< TYPE >::timer_value_. Referenced by ACE_Timer_Wheel_T< TYPE, FUNCTOR, ACE_LOCK >::dump().
00034 {
00035 #if defined (ACE_HAS_DUMP)
00036 ACE_TRACE ("ACE_Timer_Node_T::dump");
00037 ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this));
00038 ACE_DEBUG ((LM_DEBUG, ACE_LIB_TEXT ("\nact_ = %x"), this->act_));
00039 this->timer_value_.dump ();
00040 this->interval_.dump ();
00041 ACE_DEBUG ((LM_DEBUG, ACE_LIB_TEXT ("\nprev_ = %x"), this->prev_));
00042 ACE_DEBUG ((LM_DEBUG, ACE_LIB_TEXT ("\nnext_ = %x"), this->next_));
00043 ACE_DEBUG ((LM_DEBUG, ACE_LIB_TEXT ("\ntimer_id_ = %d\n"), this->timer_id_));
00044 ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP));
00045 #endif /* ACE_HAS_DUMP */
00046 }
|
|
||||||||||
|
Get the asynchronous completion token.
Definition at line 54 of file Timer_Queue_T.inl. Referenced by ACE_Timer_Wheel_T< TYPE, FUNCTOR, ACE_LOCK >::cancel(), ACE_Timer_List_T< TYPE, FUNCTOR, ACE_LOCK >::cancel(), ACE_Timer_Heap_T< TYPE, FUNCTOR, ACE_LOCK >::cancel(), ACE_Timer_Hash_T< TYPE, FUNCTOR, ACE_LOCK, BUCKET >::expire(), ACE_Timer_Wheel_T< TYPE, FUNCTOR, ACE_LOCK >::generate_timer_id(), ACE_Timer_Hash_T< TYPE, FUNCTOR, ACE_LOCK, BUCKET >::reschedule(), ACE_Timer_List_T< TYPE, FUNCTOR, ACE_LOCK >::~ACE_Timer_List_T(), and ACE_Timer_Wheel_T< TYPE, FUNCTOR, ACE_LOCK >::~ACE_Timer_Wheel_T().
00055 {
00056 return this->act_;
00057 }
|
|
||||||||||
|
Get the dispatch info. The dispatch information is got through . This form helps us in preventing allocation and deleting data along the criticl path. @TODO: We may want to have a copying version too, so that our interface will be complete.. Definition at line 126 of file Timer_Queue_T.inl. References ACE_Timer_Node_Dispatch_Info_T< TYPE >::act_, ACE_Timer_Node_Dispatch_Info_T< TYPE >::recurring_timer_, and ACE_Timer_Node_Dispatch_Info_T< TYPE >::type_. Referenced by ACE_Timer_Queue_T< TYPE, FUNCTOR, ACE_LOCK >::dispatch_info_i(), ACE_Timer_Wheel_T< TYPE, FUNCTOR, ACE_LOCK >::expire(), and ACE_Timer_Hash_T< TYPE, FUNCTOR, ACE_LOCK, BUCKET >::expire().
00127 {
00128 // Yes, do a copy
00129 info.type_ = this->type_;
00130 info.act_ = this->act_;
00131 info.recurring_timer_ =
00132 this->interval_ > ACE_Time_Value::zero;
00133 }
|
|
||||||||||
|
Get the timer interval.
Definition at line 78 of file Timer_Queue_T.inl. Referenced by ACE_Timer_Queue_T< TYPE, FUNCTOR, ACE_LOCK >::dispatch_info_i(), ACE_Timer_Wheel_T< TYPE, FUNCTOR, ACE_LOCK >::expire(), ACE_Timer_Hash_T< TYPE, FUNCTOR, ACE_LOCK, BUCKET >::expire(), and ACE_Timer_Hash_T< TYPE, FUNCTOR, ACE_LOCK, BUCKET >::reschedule().
00079 {
00080 return this->interval_;
00081 }
|
|
||||||||||
|
||||||||||
|
Get the previous pointer.
Definition at line 90 of file Timer_Queue_T.inl. Referenced by ACE_Timer_Wheel_T< TYPE, FUNCTOR, ACE_LOCK >::schedule_i(), ACE_Timer_List_T< TYPE, FUNCTOR, ACE_LOCK >::schedule_i(), ACE_Timer_Wheel_T< TYPE, FUNCTOR, ACE_LOCK >::unlink(), and ACE_Timer_List_T< TYPE, FUNCTOR, ACE_LOCK >::unlink().
00091 {
00092 return this->prev_;
00093 }
|
|
||||||||||
|
Get the timer_id.
Definition at line 114 of file Timer_Queue_T.inl. Referenced by ACE_Timer_List_T< TYPE, FUNCTOR, ACE_LOCK >::find_node(), ACE_Timer_Wheel_T< TYPE, FUNCTOR, ACE_LOCK >::find_spoke_node(), ACE_Timer_Heap_T< TYPE, FUNCTOR, ACE_LOCK >::free_node(), ACE_Timer_Wheel_T< TYPE, FUNCTOR, ACE_LOCK >::generate_timer_id(), ACE_Timer_Heap_T< TYPE, FUNCTOR, ACE_LOCK >::remove(), and ACE_Timer_Heap_T< TYPE, FUNCTOR, ACE_LOCK >::reschedule().
00115 {
00116 return this->timer_id_;
00117 }
|
|
||||||||||
|
||||||||||
|
Get the type.
Definition at line 42 of file Timer_Queue_T.inl. Referenced by ACE_Timer_Wheel_T< TYPE, FUNCTOR, ACE_LOCK >::cancel(), ACE_Timer_List_T< TYPE, FUNCTOR, ACE_LOCK >::cancel(), ACE_Timer_Heap_T< TYPE, FUNCTOR, ACE_LOCK >::cancel(), ACE_Timer_Hash_T< TYPE, FUNCTOR, ACE_LOCK, BUCKET >::reschedule(), ACE_Timer_List_T< TYPE, FUNCTOR, ACE_LOCK >::~ACE_Timer_List_T(), and ACE_Timer_Wheel_T< TYPE, FUNCTOR, ACE_LOCK >::~ACE_Timer_Wheel_T().
00043 {
00044 return this->type_;
00045 }
|
|
||||||||||||||||||||||||||||||||||||
|
Doubly linked list version.
Definition at line 24 of file Timer_Queue_T.inl. References ACE_Timer_Node_T< TYPE >::timer_value_.
|
|
||||||||||||||||||||||||||||||||
|
Singly linked list.
Definition at line 8 of file Timer_Queue_T.inl. References ACE_Timer_Node_T< TYPE >::timer_value_. Referenced by ACE_Timer_Wheel_T< TYPE, FUNCTOR, ACE_LOCK >::open_i(), ACE_Timer_Wheel_T< TYPE, FUNCTOR, ACE_LOCK >::schedule_i(), ACE_Timer_List_T< TYPE, FUNCTOR, ACE_LOCK >::schedule_i(), and ACE_Timer_Heap_T< TYPE, FUNCTOR, ACE_LOCK >::schedule_i().
|
|
||||||||||
|
Set the asynchronous completion token.
Definition at line 60 of file Timer_Queue_T.inl. Referenced by ACE_Timer_Wheel_T< TYPE, FUNCTOR, ACE_LOCK >::generate_timer_id().
00061 {
00062 this->act_ = act;
00063 }
|
|
||||||||||
|
Set the timer interval.
Definition at line 84 of file Timer_Queue_T.inl. Referenced by ACE_Timer_Wheel_T< TYPE, FUNCTOR, ACE_LOCK >::reset_interval(), and ACE_Timer_List_T< TYPE, FUNCTOR, ACE_LOCK >::reset_interval().
00085 {
00086 this->interval_ = interval;
00087 }
|
|
||||||||||
|
Set the next pointer.
Definition at line 108 of file Timer_Queue_T.inl. Referenced by ACE_Timer_Heap_T< TYPE, FUNCTOR, ACE_LOCK >::free_node(), ACE_Timer_Heap_T< TYPE, FUNCTOR, ACE_LOCK >::grow_heap(), ACE_Timer_Wheel_T< TYPE, FUNCTOR, ACE_LOCK >::schedule_i(), ACE_Timer_List_T< TYPE, FUNCTOR, ACE_LOCK >::schedule_i(), ACE_Timer_Wheel_T< TYPE, FUNCTOR, ACE_LOCK >::unlink(), and ACE_Timer_List_T< TYPE, FUNCTOR, ACE_LOCK >::unlink().
00109 {
00110 this->next_ = next;
00111 }
|
|
||||||||||
|
Set the previous pointer.
Definition at line 96 of file Timer_Queue_T.inl. Referenced by ACE_Timer_Wheel_T< TYPE, FUNCTOR, ACE_LOCK >::schedule_i(), ACE_Timer_List_T< TYPE, FUNCTOR, ACE_LOCK >::schedule_i(), ACE_Timer_Wheel_T< TYPE, FUNCTOR, ACE_LOCK >::unlink(), and ACE_Timer_List_T< TYPE, FUNCTOR, ACE_LOCK >::unlink().
00097 {
00098 this->prev_ = prev;
00099 }
|
|
||||||||||
|
Set the timer_id.
Definition at line 120 of file Timer_Queue_T.inl.
00121 {
00122 this->timer_id_ = timer_id;
00123 }
|
|
||||||||||
|
Set the timer value.
Definition at line 72 of file Timer_Queue_T.inl. References ACE_Timer_Node_T< TYPE >::timer_value_. Referenced by ACE_Timer_Queue_T< TYPE, FUNCTOR, ACE_LOCK >::dispatch_info_i(), ACE_Timer_Wheel_T< TYPE, FUNCTOR, ACE_LOCK >::expire(), and ACE_Timer_Hash_T< TYPE, FUNCTOR, ACE_LOCK, BUCKET >::expire().
00073 {
00074 this->timer_value_ = timer_value;
00075 }
|
|
||||||||||
|
Set the type.
Definition at line 48 of file Timer_Queue_T.inl.
00049 {
00050 this->type_ = type;
00051 }
|
|
|||||
|
Asynchronous completion token associated with the timer.
Definition at line 144 of file Timer_Queue_T.h. |
|
|||||
|
If this is a periodic timer this holds the time until the next timeout. Definition at line 151 of file Timer_Queue_T.h. |
|
|||||
|
Pointer to next timer.
Definition at line 157 of file Timer_Queue_T.h. |
|
|||||
|
Pointer to previous timer.
Definition at line 154 of file Timer_Queue_T.h. |
|
|||||
|
Id of this timer (used to cancel timers before they expire).
Definition at line 160 of file Timer_Queue_T.h. |
|
|||||
|
Time until the timer expires.
Definition at line 147 of file Timer_Queue_T.h. Referenced by ACE_Timer_Node_T< TYPE >::dump(), ACE_Timer_Node_T< TYPE >::get_timer_value(), ACE_Timer_Node_T< TYPE >::set(), and ACE_Timer_Node_T< TYPE >::set_timer_value(). |
|
|||||
|
Type of object stored in the Queue.
Definition at line 141 of file Timer_Queue_T.h. |
1.3.6