summaryrefslogtreecommitdiff
path: root/ace/Timer_Queue_T.i
diff options
context:
space:
mode:
Diffstat (limited to 'ace/Timer_Queue_T.i')
-rw-r--r--ace/Timer_Queue_T.i38
1 files changed, 34 insertions, 4 deletions
diff --git a/ace/Timer_Queue_T.i b/ace/Timer_Queue_T.i
index 8af63669a6f..5a72678f105 100644
--- a/ace/Timer_Queue_T.i
+++ b/ace/Timer_Queue_T.i
@@ -126,6 +126,8 @@ ACE_Timer_Node_T<TYPE>::get_dispatch_info (ACE_Timer_Node_Dispatch_Info_T<TYPE>
// Yes, do a copy
info.type_ = this->type_;
info.act_ = this->act_;
+ info.recurring_timer_ =
+ this->interval_ > ACE_Time_Value::zero;
}
template <class TYPE, class FUNCTOR, class ACE_LOCK> ACE_INLINE void
@@ -160,13 +162,41 @@ ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK>::dispatch_info (const ACE_Time_Value
}
template <class TYPE, class FUNCTOR, class ACE_LOCK> ACE_INLINE void
-ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK>::upcall (TYPE &type,
- const void *act,
- const ACE_Time_Value &cur_time)
+ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK>::upcall (ACE_Timer_Node_Dispatch_Info_T<TYPE> &info,
+ const ACE_Time_Value &cur_time)
{
- this->upcall_functor ().timeout (*this, type, act, cur_time);
+ this->upcall_functor ().timeout (*this,
+ info.type_,
+ info.act_,
+ info.recurring_timer_,
+ cur_time);
}
+template <class TYPE, class FUNCTOR, class ACE_LOCK> ACE_INLINE void
+ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK>::preinvoke (ACE_Timer_Node_Dispatch_Info_T<TYPE> &info,
+ const ACE_Time_Value &cur_time,
+ const void *&upcall_act)
+{
+ this->upcall_functor ().preinvoke (*this,
+ info.type_,
+ info.act_,
+ info.recurring_timer_,
+ cur_time,
+ upcall_act);
+}
+
+template <class TYPE, class FUNCTOR, class ACE_LOCK> ACE_INLINE void
+ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK>::postinvoke (ACE_Timer_Node_Dispatch_Info_T<TYPE> &info,
+ const ACE_Time_Value &cur_time,
+ const void *upcall_act)
+{
+ this->upcall_functor ().postinvoke (*this,
+ info.type_,
+ info.act_,
+ info.recurring_timer_,
+ cur_time,
+ upcall_act);
+}
template <class TYPE, class FUNCTOR, class ACE_LOCK> ACE_INLINE ACE_Time_Value
ACE_Timer_Queue_T<TYPE, FUNCTOR, ACE_LOCK>::gettimeofday (void)