OpenDDS::DCPS::OfferedDeadlineWatchdog Class Reference

Watchdog responsible calling the DataWriterListener when the deadline period expires. More...

#include <OfferedDeadlineWatchdog.h>

Inheritance diagram for OpenDDS::DCPS::OfferedDeadlineWatchdog:

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

Collaboration graph
[legend]
List of all members.

Public Types

typedef ACE_Recursive_Thread_Mutex lock_type
typedef ACE_Reverse_Lock<
lock_type
reverse_lock_type

Public Member Functions

 OfferedDeadlineWatchdog (ACE_Reactor *reactor, lock_type &lock,::DDS::DeadlineQosPolicy qos, OpenDDS::DCPS::DataWriterImpl *writer_impl,::DDS::DataWriter_ptr writer,::DDS::OfferedDeadlineMissedStatus &status, CORBA::Long &last_total_count)
 Constructor.
virtual ~OfferedDeadlineWatchdog ()
 Destructor.
virtual void execute ()
 Operation to be executed when the associated timer expires.
void signal ()

Private Attributes

lock_typelock_
 Lock for synchronization of status_ member.
reverse_lock_type reverse_lock_
 Reverse lock used for releasing the lock_ listener upcall.
bool signaled_
OpenDDS::DCPS::DataWriterImpl
*const 
writer_impl_
::DDS::DataWriter_var writer_
::DDS::OfferedDeadlineMissedStatusstatus_
CORBA::Long & last_total_count_
 Last total_count when status was last checked.

Detailed Description

Watchdog responsible calling the DataWriterListener when the deadline period expires.

This watchdog object calls the on_offered_deadline_missed() listener callback when the configured finite deadline period expires.


Member Typedef Documentation

typedef ACE_Recursive_Thread_Mutex OpenDDS::DCPS::OfferedDeadlineWatchdog::lock_type

typedef ACE_Reverse_Lock<lock_type> OpenDDS::DCPS::OfferedDeadlineWatchdog::reverse_lock_type


Constructor & Destructor Documentation

OpenDDS::DCPS::OfferedDeadlineWatchdog::OfferedDeadlineWatchdog ( ACE_Reactor *  reactor,
lock_type lock,
::DDS::DeadlineQosPolicy  qos,
OpenDDS::DCPS::DataWriterImpl writer_impl,
::DDS::DataWriter_ptr  writer,
::DDS::OfferedDeadlineMissedStatus status,
CORBA::Long &  last_total_count 
)

Constructor.

OpenDDS::DCPS::OfferedDeadlineWatchdog::~OfferedDeadlineWatchdog (  )  [virtual]

Destructor.


Member Function Documentation

void OpenDDS::DCPS::OfferedDeadlineWatchdog::execute (  )  [virtual]

Operation to be executed when the associated timer expires.

This Watchdog object updates the DDS::OfferedDeadlineMissed structure, and calls DataWriterListener::on_requested_deadline_missed().

Implements OpenDDS::DCPS::Watchdog.

void OpenDDS::DCPS::OfferedDeadlineWatchdog::signal (  ) 

"Pet the dog", i.e. prevent the Watchdog from executing on timeout.


Member Data Documentation

CORBA::Long& OpenDDS::DCPS::OfferedDeadlineWatchdog::last_total_count_ [private]

Last total_count when status was last checked.

lock_type& OpenDDS::DCPS::OfferedDeadlineWatchdog::lock_ [private]

Lock for synchronization of status_ member.

reverse_lock_type OpenDDS::DCPS::OfferedDeadlineWatchdog::reverse_lock_ [private]

Reverse lock used for releasing the lock_ listener upcall.

bool OpenDDS::DCPS::OfferedDeadlineWatchdog::signaled_ [private]

Flag that indicates whether the watchdog has been signaled to not execute upon timer expiration. This flag is reset to false after each deadline timeout.

::DDS::OfferedDeadlineMissedStatus& OpenDDS::DCPS::OfferedDeadlineWatchdog::status_ [private]

Reference to the missed requested deadline status structure.

::DDS::DataWriter_var OpenDDS::DCPS::OfferedDeadlineWatchdog::writer_ [private]

Reference to DataWriter passed to listener when the deadline expires.

OpenDDS::DCPS::DataWriterImpl* const OpenDDS::DCPS::OfferedDeadlineWatchdog::writer_impl_ [private]

Pointer to the DataWriterImpl object from which the DataWriterListener is obtained.


The documentation for this class was generated from the following files:
Generated on Fri Nov 7 09:37:36 2008 for OpenDDS by  doxygen 1.4.7