OpenDDS  Snapshot(2023/04/07-19:43)
Public Member Functions | Private Types | Private Attributes | List of all members
OpenDDS::DCPS::PoolSynchStrategy Class Reference

#include <PoolSynchStrategy.h>

Inheritance diagram for OpenDDS::DCPS::PoolSynchStrategy:
Inheritance graph
[legend]
Collaboration diagram for OpenDDS::DCPS::PoolSynchStrategy:
Collaboration graph
[legend]

Public Member Functions

 PoolSynchStrategy ()
 
virtual ~PoolSynchStrategy ()
 
virtual ThreadSynchcreate_synch_object (ThreadSynchResource *synch_resource, long priority, long scheduler)
 
virtual int open (void *)
 
virtual int svc ()
 
virtual int close (u_long)
 
void operator delete (void *ptr)
 
- Public Member Functions inherited from ACE_Task_Base
 ACE_Task_Base (ACE_Thread_Manager *=0)
 
virtual ~ACE_Task_Base (void)
 
virtual int module_closed (void)
 
virtual int put (ACE_Message_Block *, ACE_Time_Value *=0)
 
virtual int activate (long flags=THR_NEW_LWP|THR_JOINABLE|THR_INHERIT_SCHED, int n_threads=1, int force_active=0, long priority=ACE_DEFAULT_THREAD_PRIORITY, int grp_id=-1, ACE_Task_Base *task=0, ACE_hthread_t thread_handles[]=0, void *stack[]=0, size_t stack_size[]=0, ACE_thread_t thread_ids[]=0, const char *thr_name[]=0)
 
virtual int wait (void)
 
virtual int suspend (void)
 
virtual int resume (void)
 
int grp_id (void) const
 
void grp_id (int)
 
ACE_Thread_Managerthr_mgr (void) const
 
void thr_mgr (ACE_Thread_Manager *)
 
int is_reader (void) const
 
int is_writer (void) const
 
size_t thr_count (void) const
 
ACE_thread_t last_thread (void) const
 
- Public Member Functions inherited from ACE_Service_Object
 ACE_Service_Object (ACE_Reactor *=0)
 
virtual ~ACE_Service_Object (void)
 
- Public Member Functions inherited from ACE_Event_Handler
virtual ~ACE_Event_Handler (void)
 
virtual ACE_HANDLE get_handle (void) const
 
virtual void set_handle (ACE_HANDLE)
 
virtual int priority (void) const
 
virtual void priority (int priority)
 
virtual int handle_input (ACE_HANDLE fd=ACE_INVALID_HANDLE)
 
virtual int handle_output (ACE_HANDLE fd=ACE_INVALID_HANDLE)
 
virtual int handle_exception (ACE_HANDLE fd=ACE_INVALID_HANDLE)
 
virtual int handle_timeout (const ACE_Time_Value &current_time, const void *act=0)
 
virtual int handle_exit (ACE_Process *)
 
virtual int handle_close (ACE_HANDLE handle, ACE_Reactor_Mask close_mask)
 
virtual int handle_signal (int signum, siginfo_t *=0, ucontext_t *=0)
 
virtual int resume_handler (void)
 
virtual int handle_qos (ACE_HANDLE=ACE_INVALID_HANDLE)
 
virtual int handle_group_qos (ACE_HANDLE=ACE_INVALID_HANDLE)
 
virtual void reactor (ACE_Reactor *reactor)
 
virtual ACE_Reactorreactor (void) const
 
virtual ACE_Reactor_Timer_Interfacereactor_timer_interface (void) const
 
virtual Reference_Count add_reference (void)
 
virtual Reference_Count remove_reference (void)
 
Reference_Counting_Policyreference_counting_policy (void)
 
- Public Member Functions inherited from ACE_Shared_Object
 ACE_Shared_Object (void)
 
virtual ~ACE_Shared_Object (void)
 
virtual int init (int argc, ACE_TCHAR *argv[])
 
virtual int fini (void)
 
virtual int info (ACE_TCHAR **info_string, size_t length=0) const
 
- Public Member Functions inherited from OpenDDS::DCPS::ThreadSynchStrategy
virtual ~ThreadSynchStrategy ()
 
- Public Member Functions inherited from OpenDDS::DCPS::RcObject
virtual ~RcObject ()
 
virtual void _add_ref ()
 
virtual void _remove_ref ()
 
long ref_count () const
 
WeakObject_get_weak_object () const
 

Private Types

typedef ACE_SYNCH_MUTEX LockType
 
typedef ACE_Guard< LockTypeGuardType
 
typedef ConditionVariable< LockTypeConditionVariableType
 

Private Attributes

LockType lock_
 
ConditionVariableType condition_
 

Additional Inherited Members

- Public Types inherited from ACE_Event_Handler
typedef long Reference_Count
 
- Static Public Member Functions inherited from ACE_Task_Base
static ACE_THR_FUNC_RETURN svc_run (void *)
 
static void cleanup (void *object, void *params)
 
- Static Public Member Functions inherited from ACE_Event_Handler
static ACE_THR_FUNC_RETURN read_adapter (void *event_handler)
 
static int register_stdin_handler (ACE_Event_Handler *eh, ACE_Reactor *reactor, ACE_Thread_Manager *thr_mgr, int flags=THR_DETACHED)
 
static int remove_stdin_handler (ACE_Reactor *reactor, ACE_Thread_Manager *thr_mgr)
 
- Public Attributes inherited from ACE_Service_Object
 ACE_ALLOC_HOOK_DECLARE
 
- Public Attributes inherited from ACE_Event_Handler
 LO_PRIORITY
 
 HI_PRIORITY
 
 NULL_MASK
 
 READ_MASK
 
 WRITE_MASK
 
 EXCEPT_MASK
 
 ACCEPT_MASK
 
 CONNECT_MASK
 
 TIMER_MASK
 
 QOS_MASK
 
 GROUP_QOS_MASK
 
 SIGNAL_MASK
 
 ALL_EVENTS_MASK
 
 RWE_MASK
 
 DONT_CALL
 
 ACE_EVENT_HANDLER_NOT_RESUMED
 
 ACE_REACTOR_RESUMES_HANDLER
 
 ACE_APPLICATION_RESUMES_HANDLER
 
- Protected Types inherited from ACE_Event_Handler
typedef ACE_Atomic_Op< ACE_SYNCH_MUTEX, Reference_CountAtomic_Reference_Count
 
- Protected Member Functions inherited from ACE_Event_Handler
 ACE_Event_Handler (ACE_Reactor *=0, int priority=ACE_Event_Handler::LO_PRIORITY)
 
- Protected Member Functions inherited from OpenDDS::DCPS::ThreadSynchStrategy
 ThreadSynchStrategy ()
 
- Protected Member Functions inherited from OpenDDS::DCPS::RcObject
 RcObject ()
 
- Protected Attributes inherited from ACE_Task_Base
size_t thr_count_
 
ACE_Thread_Managerthr_mgr_
 
u_long flags_
 
int grp_id_
 
ACE_thread_t last_thread_id_
 
- Protected Attributes inherited from ACE_Event_Handler
Atomic_Reference_Count reference_count_
 

Detailed Description

Definition at line 24 of file PoolSynchStrategy.h.

Member Typedef Documentation

◆ ConditionVariableType

Definition at line 45 of file PoolSynchStrategy.h.

◆ GuardType

Definition at line 44 of file PoolSynchStrategy.h.

◆ LockType

Definition at line 43 of file PoolSynchStrategy.h.

Constructor & Destructor Documentation

◆ PoolSynchStrategy()

ACE_INLINE OpenDDS::DCPS::PoolSynchStrategy::PoolSynchStrategy ( )

Definition at line 11 of file PoolSynchStrategy.inl.

References DBG_ENTRY_LVL.

12  : condition_(this->lock_)
13 {
14  DBG_ENTRY_LVL("PoolSynchStrategy","PoolSynchStrategy",6);
15 }
ConditionVariableType condition_
#define DBG_ENTRY_LVL(CNAME, MNAME, DBG_LVL)
Definition: EntryExit.h:68

◆ ~PoolSynchStrategy()

OpenDDS::DCPS::PoolSynchStrategy::~PoolSynchStrategy ( )
virtual

Definition at line 16 of file PoolSynchStrategy.cpp.

References DBG_ENTRY_LVL.

17 {
18  DBG_ENTRY_LVL("PoolSynchStrategy","~PoolSynchStrategy",6);
19 }
#define DBG_ENTRY_LVL(CNAME, MNAME, DBG_LVL)
Definition: EntryExit.h:68

Member Function Documentation

◆ close()

int OpenDDS::DCPS::PoolSynchStrategy::close ( u_long  )
virtual

Reimplemented from ACE_Task_Base.

Definition at line 57 of file PoolSynchStrategy.cpp.

References DBG_ENTRY_LVL.

58 {
59  DBG_ENTRY_LVL("PoolSynchStrategy","close",6);
60  // TBD
61  return 0;
62 }
#define DBG_ENTRY_LVL(CNAME, MNAME, DBG_LVL)
Definition: EntryExit.h:68

◆ create_synch_object()

OpenDDS::DCPS::ThreadSynch * OpenDDS::DCPS::PoolSynchStrategy::create_synch_object ( ThreadSynchResource synch_resource,
long  priority,
long  scheduler 
)
virtual

Implements OpenDDS::DCPS::ThreadSynchStrategy.

Definition at line 22 of file PoolSynchStrategy.cpp.

References DBG_ENTRY_LVL.

26 {
27  DBG_ENTRY_LVL("PoolSynchStrategy","create_synch_object",6);
28  PoolSynch* synch_object = new PoolSynch(this,synch_resource);
29 
30  // TBD - We need to remember the synch_object here, because if this
31  // PoolSynchStrategy (an active object) is shutdown, it will
32  // need these... right? Or is it the other way around? In any
33  // regard, we know that the PoolSynch needs a pointer to us
34  // because we are the active object.
35 
36  return synch_object;
37 }
#define DBG_ENTRY_LVL(CNAME, MNAME, DBG_LVL)
Definition: EntryExit.h:68

◆ open()

int OpenDDS::DCPS::PoolSynchStrategy::open ( void *  )
virtual

Reimplemented from ACE_Task_Base.

Definition at line 40 of file PoolSynchStrategy.cpp.

References DBG_ENTRY_LVL.

41 {
42  DBG_ENTRY_LVL("PoolSynchStrategy","open",6);
43  // TBD
44  return 0;
45 }
#define DBG_ENTRY_LVL(CNAME, MNAME, DBG_LVL)
Definition: EntryExit.h:68

◆ operator delete()

void OpenDDS::DCPS::PoolSynchStrategy::operator delete ( void *  ptr)
inline

Definition at line 40 of file PoolSynchStrategy.h.

40 { ThreadSynchStrategy::operator delete(ptr); }

◆ svc()

int OpenDDS::DCPS::PoolSynchStrategy::svc ( void  )
virtual

Reimplemented from ACE_Task_Base.

Definition at line 48 of file PoolSynchStrategy.cpp.

References DBG_ENTRY_LVL.

49 {
50  // Future: ThreadStatus.
51  DBG_ENTRY_LVL("PoolSynchStrategy","svc",6);
52  // TBD
53  return 0;
54 }
#define DBG_ENTRY_LVL(CNAME, MNAME, DBG_LVL)
Definition: EntryExit.h:68

Member Data Documentation

◆ condition_

ConditionVariableType OpenDDS::DCPS::PoolSynchStrategy::condition_
private

Definition at line 48 of file PoolSynchStrategy.h.

◆ lock_

LockType OpenDDS::DCPS::PoolSynchStrategy::lock_
private

Definition at line 47 of file PoolSynchStrategy.h.


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