OpenDDS  Snapshot(2023/04/28-20:55)
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
OpenDDS::DCPS::PmfJob< Delegate > Class Template Reference

#include <JobQueue.h>

Inheritance diagram for OpenDDS::DCPS::PmfJob< Delegate >:
Inheritance graph
[legend]
Collaboration diagram for OpenDDS::DCPS::PmfJob< Delegate >:
Collaboration graph
[legend]

Public Types

typedef void(Delegate::* PMF) ()
 

Public Member Functions

 PmfJob (RcHandle< Delegate > delegate, PMF function)
 
virtual ~PmfJob ()
 
- Public Member Functions inherited from OpenDDS::DCPS::Job
virtual ~Job ()
 
- 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 Member Functions

void execute ()
 

Private Attributes

WeakRcHandle< Delegatedelegate_
 
PMF function_
 

Additional Inherited Members

- Protected Member Functions inherited from OpenDDS::DCPS::RcObject
 RcObject ()
 

Detailed Description

template<typename Delegate>
class OpenDDS::DCPS::PmfJob< Delegate >

Definition at line 32 of file JobQueue.h.

Member Typedef Documentation

◆ PMF

template<typename Delegate >
typedef void(Delegate::* OpenDDS::DCPS::PmfJob< Delegate >::PMF) ()

Definition at line 34 of file JobQueue.h.

Constructor & Destructor Documentation

◆ PmfJob()

template<typename Delegate >
OpenDDS::DCPS::PmfJob< Delegate >::PmfJob ( RcHandle< Delegate delegate,
PMF  function 
)
inline

Definition at line 36 of file JobQueue.h.

38  : delegate_(delegate)
39  , function_(function)
40  {}
WeakRcHandle< Delegate > delegate_
Definition: JobQueue.h:45

◆ ~PmfJob()

template<typename Delegate >
virtual OpenDDS::DCPS::PmfJob< Delegate >::~PmfJob ( )
inlinevirtual

Definition at line 42 of file JobQueue.h.

42 {}

Member Function Documentation

◆ execute()

template<typename Delegate >
void OpenDDS::DCPS::PmfJob< Delegate >::execute ( void  )
inlineprivatevirtual

Implements OpenDDS::DCPS::Job.

Definition at line 48 of file JobQueue.h.

References OpenDDS::DCPS::WeakRcHandle< T >::lock().

49  {
50  RcHandle<Delegate> handle = delegate_.lock();
51  if (handle) {
52  ((*handle).*function_)();
53  }
54  }
WeakRcHandle< Delegate > delegate_
Definition: JobQueue.h:45
RcHandle< T > lock() const
Definition: RcObject.h:188

Member Data Documentation

◆ delegate_

template<typename Delegate >
WeakRcHandle<Delegate> OpenDDS::DCPS::PmfJob< Delegate >::delegate_
private

Definition at line 45 of file JobQueue.h.

◆ function_

template<typename Delegate >
PMF OpenDDS::DCPS::PmfJob< Delegate >::function_
private

Definition at line 46 of file JobQueue.h.


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