AceSmartSoft API Documentation
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
SmartACE::SmartMonitor Class Reference

#include <smartAdministrativeMonitor.hh>

Inheritance diagram for SmartACE::SmartMonitor:
SmartACE::SmartAdministrativeMonitor

Public Member Functions

 SmartMonitor ()
 default constructor More...
 
virtual ~SmartMonitor ()
 default destructor More...
 
void blocking (const bool)
 block/unblock More...
 
void enableTimedMode (const ACE_Time_Value &timeout)
 enable timed mode More...
 
void disableTimedMode ()
 disable timed mode More...
 
int acquire ()
 aquire internal recursive mutex More...
 
int release ()
 release internal recursive mutex More...
 
virtual void broadcast ()
 signal to all threads to unblock from wait call More...
 
virtual void reset ()
 reset internal state to "not signalled" More...
 
virtual Smart::StatusCode wait ()
 blocking wait on condition variable to unblock More...
 

Protected Member Functions

void clear_nested_level ()
 
void restore_nested_level ()
 

Protected Attributes

bool signalled
 
bool statusBlocking
 
bool statusTimed
 
ACE_Time_Value timeout_time
 
SmartConditionRecursiveMutex cond
 

Detailed Description

This class is used to implement synchronized Request-Response message communication. The implementation is similar to SmartCVwithMemory class, with the difference of using SmartRecursiveMutex and SmartConditionRecursiveMutex. (for more Details see PhD Thesis of Prof. Dr. Christian Schlegel, chapter 5.6.6.5)

Constructor & Destructor Documentation

◆ SmartMonitor()

SmartACE::SmartMonitor::SmartMonitor ( )

default constructor

◆ ~SmartMonitor()

virtual SmartACE::SmartMonitor::~SmartMonitor ( )
virtual

default destructor

Member Function Documentation

◆ acquire()

int SmartACE::SmartMonitor::acquire ( )

aquire internal recursive mutex

◆ blocking()

void SmartACE::SmartMonitor::blocking ( const bool  )

block/unblock

◆ broadcast()

virtual void SmartACE::SmartMonitor::broadcast ( )
virtual

signal to all threads to unblock from wait call

◆ clear_nested_level()

void SmartACE::SmartMonitor::clear_nested_level ( )
protected

◆ disableTimedMode()

void SmartACE::SmartMonitor::disableTimedMode ( )

disable timed mode

◆ enableTimedMode()

void SmartACE::SmartMonitor::enableTimedMode ( const ACE_Time_Value &  timeout)

enable timed mode

◆ release()

int SmartACE::SmartMonitor::release ( )

release internal recursive mutex

◆ reset()

virtual void SmartACE::SmartMonitor::reset ( )
virtual

reset internal state to "not signalled"

◆ restore_nested_level()

void SmartACE::SmartMonitor::restore_nested_level ( )
protected

◆ wait()

virtual Smart::StatusCode SmartACE::SmartMonitor::wait ( )
virtual

blocking wait on condition variable to unblock

Reimplemented in SmartACE::SmartAdministrativeMonitor.

Member Data Documentation

◆ cond

SmartConditionRecursiveMutex SmartACE::SmartMonitor::cond
protected

◆ signalled

bool SmartACE::SmartMonitor::signalled
protected

◆ statusBlocking

bool SmartACE::SmartMonitor::statusBlocking
protected

◆ statusTimed

bool SmartACE::SmartMonitor::statusTimed
protected

◆ timeout_time

ACE_Time_Value SmartACE::SmartMonitor::timeout_time
protected

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