summaryrefslogtreecommitdiff
path: root/ace/Timer_Queue_T.h
diff options
context:
space:
mode:
authorbrunsch <brunsch@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1997-04-27 04:15:14 +0000
committerbrunsch <brunsch@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1997-04-27 04:15:14 +0000
commitaf25f9e89a745a56e3787f56bff0badb9bed6d22 (patch)
tree301160d56b868aaa44bf078e9e12e9b2830cce6f /ace/Timer_Queue_T.h
parent25ecb35e8a9e22bd952161ae49109a530774d56d (diff)
downloadATCD-af25f9e89a745a56e3787f56bff0badb9bed6d22.tar.gz
Had to change ACE_Timer_Node_T to allow for doubly linked lists. Also
added friendships for ACE_Timing_Wheel_T and ACE_Timing_Wheel_Iterator_T.
Diffstat (limited to 'ace/Timer_Queue_T.h')
-rw-r--r--ace/Timer_Queue_T.h25
1 files changed, 23 insertions, 2 deletions
diff --git a/ace/Timer_Queue_T.h b/ace/Timer_Queue_T.h
index 4df59c0e66a..d8d8b1762ca 100644
--- a/ace/Timer_Queue_T.h
+++ b/ace/Timer_Queue_T.h
@@ -36,6 +36,12 @@ class ACE_Timer_Heap_T;
template <class TYPE, class FUNCTOR>
class ACE_Timer_Heap_Iterator_T;
+template <class TYPE, class FUNCTOR>
+class ACE_Timer_Wheel_T;
+
+template <class TYPE, class FUNCTOR>
+class ACE_Timer_Wheel_Iterator_T;
+
// This should be nested within the ACE_Timer_Queue class but some C++
// compilers still don't like this...
@@ -50,7 +56,9 @@ class ACE_Timer_Node_T
friend class ACE_Timer_List_Iterator_T<TYPE, FUNCTOR>;
friend class ACE_Timer_Heap_T<TYPE, FUNCTOR>;
friend class ACE_Timer_Heap_Iterator_T<TYPE, FUNCTOR>;
-
+ friend class ACE_Timer_Wheel_T<TYPE, FUNCTOR>;
+ friend class ACE_Timer_Wheel_Iterator_T<TYPE, FUNCTOR>;
+
typedef ACE_Timer_Node_T<TYPE, FUNCTOR> NODE;
// Typedef for self
@@ -62,7 +70,17 @@ class ACE_Timer_Node_T
NODE *n,
int timer_id);
// Constructor.
-
+
+ ACE_Timer_Node_T (const TYPE &type,
+ const void *a,
+ const ACE_Time_Value &t,
+ const ACE_Time_Value &i,
+ NODE *p,
+ NODE *n,
+ int timer_id);
+ // Constructor for the doubly linked list version.
+
+
ACE_Timer_Node_T (void);
// Default constructor.
@@ -79,6 +97,9 @@ class ACE_Timer_Node_T
// If this is a periodic timer this holds the time until the next
// timeout.
+ NODE *prev_;
+ // Pointer to previous timer.
+
NODE *next_;
// Pointer to next timer.