ACE 8.0.5
Loading...
Searching...
No Matches
ACE_Timer_Queue_Upcall_Base< TYPE, FUNCTOR > Class Template Reference

#include <Timer_Queue_T.h>

Inheritance diagram for ACE_Timer_Queue_Upcall_Base< TYPE, FUNCTOR >:
Collaboration diagram for ACE_Timer_Queue_Upcall_Base< TYPE, FUNCTOR >:

Public Member Functions

 ACE_Timer_Queue_Upcall_Base (FUNCTOR *upcall_functor=nullptr)
 ACE_Timer_Queue_Upcall_Base (const ACE_Timer_Queue_Upcall_Base &)=delete
 ACE_Timer_Queue_Upcall_Base (ACE_Timer_Queue_Upcall_Base &&)=delete
ACE_Timer_Queue_Upcall_Baseoperator= (const ACE_Timer_Queue_Upcall_Base &)=delete
ACE_Timer_Queue_Upcall_Baseoperator= (ACE_Timer_Queue_Upcall_Base &&)=delete
virtual ~ACE_Timer_Queue_Upcall_Base ()
 Destructor.
FUNCTOR & upcall_functor ()
 Accessor to the upcall functor.
Public Member Functions inherited from ACE_Abstract_Timer_Queue< TYPE >
virtual ~ACE_Abstract_Timer_Queue ()=0
 Destructor.
virtual bool is_empty () const =0
 True if queue is empty, else false.
virtual const ACE_Time_Valueearliest_time () const =0
virtual long schedule (const TYPE &type, const void *act, const ACE_Time_Value &future_time, const ACE_Time_Value &interval=ACE_Time_Value::zero)=0
virtual int expire (const ACE_Time_Value &current_time)=0
virtual int expire ()=0
virtual int expire_single (ACE_Command_Base &pre_dispatch_command)=0
virtual int reset_interval (long timer_id, const ACE_Time_Value &interval)=0
virtual int cancel (const TYPE &type, int dont_call_handle_close=1)=0
virtual int close ()=0
virtual ACE_Time_Value gettimeofday ()=0
virtual void gettimeofday (ACE_Time_Value(*gettimeofday)())=0
virtual ACE_Time_Valuecalculate_timeout (ACE_Time_Value *max)=0
 Determine the next event to timeout. Returns max if there are no pending timers or if all pending timers are longer than max. This method acquires a lock internally since it modifies internal state.
virtual ACE_Time_Valuecalculate_timeout (ACE_Time_Value *max, ACE_Time_Value *the_timeout)=0
virtual ACE_Time_Value current_time ()=0
virtual ITERATORiter ()=0
 Returns a pointer to this ACE_Timer_Queue's iterator.
virtual ACE_Timer_Node_T< TYPE > * remove_first ()=0
 Removes the earliest node from the queue and returns it.
virtual ACE_Timer_Node_T< TYPE > * get_first ()=0
 Reads the earliest node from the queue and returns it.
virtual void dump () const =0
 Dump the state of a object.

Protected Attributes

FUNCTOR * upcall_functor_
 Upcall functor.
bool const delete_upcall_functor_
 To delete or not to delete is the question?

Additional Inherited Members

Public Types inherited from ACE_Abstract_Timer_Queue< TYPE >
typedef ACE_Timer_Queue_Iterator_T< TYPE > ITERATOR
 Type of Iterator.

Detailed Description

template<typename TYPE, typename FUNCTOR>
class ACE_Timer_Queue_Upcall_Base< TYPE, FUNCTOR >

Common base class for all timer queues with the same time source policy. This is really motivated by a single use-case in the code, namely the ACE_Proactor needs to set a backpointer in the upcall functor.

Constructor & Destructor Documentation

◆ ACE_Timer_Queue_Upcall_Base() [1/3]

template<class TYPE, class FUNCTOR>
ACE_Timer_Queue_Upcall_Base< TYPE, FUNCTOR >::ACE_Timer_Queue_Upcall_Base ( FUNCTOR * upcall_functor = nullptr)
inlineexplicit

◆ ACE_Timer_Queue_Upcall_Base() [2/3]

template<typename TYPE, typename FUNCTOR>
ACE_Timer_Queue_Upcall_Base< TYPE, FUNCTOR >::ACE_Timer_Queue_Upcall_Base ( const ACE_Timer_Queue_Upcall_Base< TYPE, FUNCTOR > & )
delete

◆ ACE_Timer_Queue_Upcall_Base() [3/3]

template<typename TYPE, typename FUNCTOR>
ACE_Timer_Queue_Upcall_Base< TYPE, FUNCTOR >::ACE_Timer_Queue_Upcall_Base ( ACE_Timer_Queue_Upcall_Base< TYPE, FUNCTOR > && )
delete

◆ ~ACE_Timer_Queue_Upcall_Base()

template<class TYPE, class FUNCTOR>
ACE_Timer_Queue_Upcall_Base< TYPE, FUNCTOR >::~ACE_Timer_Queue_Upcall_Base ( )
inlinevirtual

Destructor.

Member Function Documentation

◆ operator=() [1/2]

template<typename TYPE, typename FUNCTOR>
ACE_Timer_Queue_Upcall_Base & ACE_Timer_Queue_Upcall_Base< TYPE, FUNCTOR >::operator= ( ACE_Timer_Queue_Upcall_Base< TYPE, FUNCTOR > && )
delete

◆ operator=() [2/2]

template<typename TYPE, typename FUNCTOR>
ACE_Timer_Queue_Upcall_Base & ACE_Timer_Queue_Upcall_Base< TYPE, FUNCTOR >::operator= ( const ACE_Timer_Queue_Upcall_Base< TYPE, FUNCTOR > & )
delete

◆ upcall_functor()

template<class TYPE, class FUNCTOR>
FUNCTOR & ACE_Timer_Queue_Upcall_Base< TYPE, FUNCTOR >::upcall_functor ( )
inline

Accessor to the upcall functor.

Member Data Documentation

◆ delete_upcall_functor_

template<typename TYPE, typename FUNCTOR>
bool const ACE_Timer_Queue_Upcall_Base< TYPE, FUNCTOR >::delete_upcall_functor_
protected

To delete or not to delete is the question?

◆ upcall_functor_

template<typename TYPE, typename FUNCTOR>
FUNCTOR* ACE_Timer_Queue_Upcall_Base< TYPE, FUNCTOR >::upcall_functor_
protected

Upcall functor.


The documentation for this class was generated from the following files: