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

#include <ThreadSynchWorker.h>

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

Public Types

enum  WorkOutcome { WORK_OUTCOME_MORE_TO_DO, WORK_OUTCOME_NO_MORE_TO_DO, WORK_OUTCOME_CLOGGED_RESOURCE, WORK_OUTCOME_BROKEN_RESOURCE }
 

Public Member Functions

virtual ~ThreadSynchWorker ()
 
virtual WorkOutcome perform_work ()=0
 
virtual void schedule_output ()
 Indicate that queued data is available to be sent. More...
 
std::size_t id () const
 DataLink reference value for diagnostics. More...
 
virtual ACE_HANDLE get_handle ()=0
 
- 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
 

Protected Member Functions

 ThreadSynchWorker (std::size_t id=0)
 
- Protected Member Functions inherited from OpenDDS::DCPS::RcObject
 RcObject ()
 

Private Attributes

std::size_t id_
 

Detailed Description

Definition at line 22 of file ThreadSynchWorker.h.

Member Enumeration Documentation

◆ WorkOutcome

Constructor & Destructor Documentation

◆ ~ThreadSynchWorker()

OpenDDS::DCPS::ThreadSynchWorker::~ThreadSynchWorker ( )
virtual

Definition at line 15 of file ThreadSynchWorker.cpp.

References DBG_ENTRY_LVL.

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

◆ ThreadSynchWorker()

ACE_INLINE OpenDDS::DCPS::ThreadSynchWorker::ThreadSynchWorker ( std::size_t  id = 0)
protected

Definition at line 11 of file ThreadSynchWorker.inl.

References ACE_INLINE, and DBG_ENTRY_LVL.

12  : id_(id)
13 {
14  DBG_ENTRY_LVL("ThreadSynchWorker","ThreadSynchWorker",6);
15 }
#define DBG_ENTRY_LVL(CNAME, MNAME, DBG_LVL)
Definition: EntryExit.h:68

Member Function Documentation

◆ get_handle()

virtual ACE_HANDLE OpenDDS::DCPS::ThreadSynchWorker::get_handle ( )
pure virtual

◆ id()

ACE_INLINE std::size_t OpenDDS::DCPS::ThreadSynchWorker::id ( void  ) const

DataLink reference value for diagnostics.

Definition at line 19 of file ThreadSynchWorker.inl.

References ACE_INLINE, DBG_ENTRY_LVL, and id_.

Referenced by OpenDDS::DCPS::ScheduleOutputHandler::handle_exception().

20 {
21  DBG_ENTRY_LVL("ThreadSynchWorker","id",6);
22 
23  return id_;
24 }
#define DBG_ENTRY_LVL(CNAME, MNAME, DBG_LVL)
Definition: EntryExit.h:68

◆ perform_work()

virtual WorkOutcome OpenDDS::DCPS::ThreadSynchWorker::perform_work ( )
pure virtual

◆ schedule_output()

ACE_INLINE void OpenDDS::DCPS::ThreadSynchWorker::schedule_output ( )
virtual

Indicate that queued data is available to be sent.

Reimplemented in OpenDDS::DCPS::TcpSendStrategy.

Definition at line 28 of file ThreadSynchWorker.inl.

References DBG_ENTRY_LVL.

29 {
30  DBG_ENTRY_LVL("ThreadSynchWorker","schedule_output",6);
31 }
#define DBG_ENTRY_LVL(CNAME, MNAME, DBG_LVL)
Definition: EntryExit.h:68

Member Data Documentation

◆ id_

std::size_t OpenDDS::DCPS::ThreadSynchWorker::id_
private

Definition at line 50 of file ThreadSynchWorker.h.

Referenced by id().


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