Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

baci::BACIMonitor Class Reference

#include <baciBACIMonitor.h>

Collaboration diagram for baci::BACIMonitor:

Collaboration graph
[legend]
List of all members.

Public Types

enum  UpdateMode { mumNull = 0, mumLast = 1, mumTrunc = 2 }

Public Member Functions

 BACIMonitor (const ACE_CString &_name, int _callbackID, MonitorImplementator *monitorImplementator_p, const ACS::TimeInterval &_triggerTime, const BACIValue &_triggerValue, const ACS::TimeInterval &_minTriggerTime, const BACIValue &_minTriggerValue, BACIProperty *_property, const ACS::TimeInterval &_transmitTime=0, const UpdateMode &_updateMode=mumLast, const bool _achivingMonitor=false, const bool _suspended=false, const bool _deltaValueAndTimerInteraction=false, const unsigned int _priority=3)
void destroy ()
 Destroys monitor. Proxy for ~BACIMonitor.
void suspend ()
void resume ()
void setLastTime (const ACS::TimeInterval &_lastTime)
void setTriggerValue (const BACIValue &_triggerValue)
void setMinTriggerValue (const BACIValue &_minTriggerValue)
void setLastValue (const BACIValue &_lastValue)
void setTriggerOnValue (bool enable)
const char * getName () const
bool isSuspended () const
BACIMonitoroperator= (const BACIMonitor &mon)
bool operator== (const BACIMonitor &mon) const
UpdateMode getUpdateMode () const
int getCallbackID () const
ACS::TimeInterval getTriggerTime () const
ACS::TimeInterval getMinTriggerTime () const
ACS::TimeInterval getLastTime () const
ACS::TimeInterval getTransmitTime () const
BACIValue getTriggerValue () const
BACIValue getMinTriggerValue () const
BACIValue getLastValue () const
bool getTriggerOnValue () const
void setUpdateMode (const UpdateMode &_updateMode)
void setTriggerTime (const ACS::TimeInterval &_triggerTime)
void setMinTriggerTime (const ACS::TimeInterval &_minTriggerTime)
void setTransmitTime (const ACS::TimeInterval &_transmitTime)
void monitorStateChanged ()
MonitorImplementatorgetMonitorImplementator () const
BACIPropertygetProperty () const
bool isInDestructionState () const
bool isArchivingMonitor () const
bool isDeltaValueAndTimerInteraction () const
unsigned int getPriority () const

Private Member Functions

 ~BACIMonitor ()
void internalDestroy ()

Private Attributes

ACE_CString name_m
int callbackID_m
MonitorImplementatormonitorImplementator_mp
UpdateMode updateMode_m
ACS::TimeInterval triggerTime_m
ACS::TimeInterval minTriggerTime_m
ACS::TimeInterval transmitTime_m
bool userControlledTransmitTime_m
ACS::TimeInterval lastTime_m
BACIValue triggerValue_m
BACIValue minTriggerValue_m
BACIValue lastValue_m
bool triggerOnValue_m
BACIPropertyproperty_mp
bool archivingMonitor_m
bool suspended_m
bool deltaValueAndTimerInteraction_m
unsigned int priority_m
bool inDestructionState_m
bool destroyed_m

Detailed Description

Class represeting BACI Monitor It provides monitoring capability triggered on time or value change, clients are notified using callbacks
Author:
Matej Sekoranja, Jozef Stefan Institute, Slovenia


Member Enumeration Documentation

enum baci::BACIMonitor::UpdateMode
 

Monitor update mode To have synchorinzed monitors mumLast (default) mode has to be used. BACI Monitors support 2 modes: mumLast, mumTrunc Example:

  monitorThreadSleepTime=100
  monitor1TriggerTime=30
  monitor2TriggerTime=140
  pollInterval=10

  Time        mumLast                      mumTrunc

  0                M1 (0), M2 (0)               M1 (0), M2 (0)
  100              M1 (90)                      M1 (0+90)
  200              M1 (180), M2 (140)           M1 (100+90), M2 (0+140)
  300              M1 (300), M2 (280)           M1 (200+90)
  400              M1 (390)                     M1 (300+90), M2 (200+140)
  500              M1 (480), M2 (420)           M1 (400+90)
  600              M1 (600), M2 (560)           M1 (500+90), M2 (400+140)
  700              M1 (690)                     M1 (600+90)
 
Enumeration values:
mumNull 
mumLast 
mumTrunc 


Constructor & Destructor Documentation

baci::BACIMonitor::BACIMonitor const ACE_CString &  _name,
int  _callbackID,
MonitorImplementator monitorImplementator_p,
const ACS::TimeInterval _triggerTime,
const BACIValue _triggerValue,
const ACS::TimeInterval _minTriggerTime,
const BACIValue _minTriggerValue,
BACIProperty _property,
const ACS::TimeInterval _transmitTime = 0,
const UpdateMode _updateMode = mumLast,
const bool  _achivingMonitor = false,
const bool  _suspended = false,
const bool  _deltaValueAndTimerInteraction = false,
const unsigned int  _priority = 3
 

Constructor

baci::BACIMonitor::~BACIMonitor  )  [private]
 

Destructor Do not call it directly, call internalDestroy() method instead.

See also:
destroy


Member Function Documentation

void baci::BACIMonitor::destroy  ) 
 

Destroys monitor. Proxy for ~BACIMonitor.

int baci::BACIMonitor::getCallbackID  )  const [inline]
 

ACS::TimeInterval baci::BACIMonitor::getLastTime  )  const [inline]
 

BACIValue baci::BACIMonitor::getLastValue  )  const [inline]
 

ACS::TimeInterval baci::BACIMonitor::getMinTriggerTime  )  const [inline]
 

BACIValue baci::BACIMonitor::getMinTriggerValue  )  const [inline]
 

MonitorImplementator* baci::BACIMonitor::getMonitorImplementator  )  const [inline]
 

const char* baci::BACIMonitor::getName void   )  const [inline]
 

unsigned int baci::BACIMonitor::getPriority  )  const [inline]
 

BACIProperty* baci::BACIMonitor::getProperty  )  const [inline]
 

ACS::TimeInterval baci::BACIMonitor::getTransmitTime  )  const [inline]
 

bool baci::BACIMonitor::getTriggerOnValue  )  const [inline]
 

ACS::TimeInterval baci::BACIMonitor::getTriggerTime  )  const [inline]
 

BACIValue baci::BACIMonitor::getTriggerValue  )  const [inline]
 

UpdateMode baci::BACIMonitor::getUpdateMode  )  const [inline]
 

void baci::BACIMonitor::internalDestroy  )  [private]
 

bool baci::BACIMonitor::isArchivingMonitor  )  const [inline]
 

bool baci::BACIMonitor::isDeltaValueAndTimerInteraction  )  const [inline]
 

bool baci::BACIMonitor::isInDestructionState  )  const [inline]
 

bool baci::BACIMonitor::isSuspended  )  const [inline]
 

void baci::BACIMonitor::monitorStateChanged  )  [inline]
 

Notify monitor implementator about monitor state change

BACIMonitor& baci::BACIMonitor::operator= const BACIMonitor mon  )  [inline]
 

bool baci::BACIMonitor::operator== const BACIMonitor mon  )  const [inline]
 

void baci::BACIMonitor::resume  ) 
 

void baci::BACIMonitor::setLastTime const ACS::TimeInterval _lastTime  ) 
 

void baci::BACIMonitor::setLastValue const BACIValue _lastValue  ) 
 

void baci::BACIMonitor::setMinTriggerTime const ACS::TimeInterval _minTriggerTime  ) 
 

void baci::BACIMonitor::setMinTriggerValue const BACIValue _minTriggerValue  ) 
 

void baci::BACIMonitor::setTransmitTime const ACS::TimeInterval _transmitTime  )  [inline]
 

void baci::BACIMonitor::setTriggerOnValue bool  enable  ) 
 

void baci::BACIMonitor::setTriggerTime const ACS::TimeInterval _triggerTime  ) 
 

void baci::BACIMonitor::setTriggerValue const BACIValue _triggerValue  ) 
 

void baci::BACIMonitor::setUpdateMode const UpdateMode _updateMode  ) 
 

void baci::BACIMonitor::suspend  ) 
 


Member Data Documentation

bool baci::BACIMonitor::archivingMonitor_m [private]
 

int baci::BACIMonitor::callbackID_m [private]
 

bool baci::BACIMonitor::deltaValueAndTimerInteraction_m [private]
 

bool baci::BACIMonitor::destroyed_m [private]
 

bool baci::BACIMonitor::inDestructionState_m [private]
 

ACS::TimeInterval baci::BACIMonitor::lastTime_m [private]
 

BACIValue baci::BACIMonitor::lastValue_m [private]
 

ACS::TimeInterval baci::BACIMonitor::minTriggerTime_m [private]
 

BACIValue baci::BACIMonitor::minTriggerValue_m [private]
 

MonitorImplementator* baci::BACIMonitor::monitorImplementator_mp [private]
 

ACE_CString baci::BACIMonitor::name_m [private]
 

unsigned int baci::BACIMonitor::priority_m [private]
 

BACIProperty* baci::BACIMonitor::property_mp [private]
 

bool baci::BACIMonitor::suspended_m [private]
 

ACS::TimeInterval baci::BACIMonitor::transmitTime_m [private]
 

bool baci::BACIMonitor::triggerOnValue_m [private]
 

ACS::TimeInterval baci::BACIMonitor::triggerTime_m [private]
 

BACIValue baci::BACIMonitor::triggerValue_m [private]
 

UpdateMode baci::BACIMonitor::updateMode_m [private]
 

bool baci::BACIMonitor::userControlledTransmitTime_m [private]
 


The documentation for this class was generated from the following file:
Generated on Thu Apr 30 02:37:11 2009 for ACS C++ API by doxygen 1.3.8