Public Types | Public Member Functions | Private Member Functions | Private Attributes | Friends

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 setTriggerValuePercent (const BACIValue &_triggerValuePercent)
void setMinTriggerValue (const BACIValue &_minTriggerValue)
void setLastValue (const BACIValue &_lastValue)
void setTriggerOnValue (bool enable)
void setTriggerOnValuePercent (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 getTriggerValuePercent () const
BACIValue getMinTriggerValue () const
BACIValue getLastValue () const
bool getTriggerOnValue () const
bool getTriggerOnValuePercent () 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 triggerValuePercent_m
BACIValue minTriggerValue_m
BACIValue lastValue_m
bool triggerOnValue_m
bool triggerOnValuePercent_m
BACIPropertyproperty_mp
bool archivingMonitor_m
bool suspended_m
bool deltaValueAndTimerInteraction_m
unsigned int priority_m
bool inDestructionState_m
bool destroyed_m

Friends

class BACIProperty

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

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)
 
Enumerator:
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]
bool baci::BACIMonitor::getTriggerOnValuePercent (  )  const [inline]
ACS::TimeInterval baci::BACIMonitor::getTriggerTime (  )  const [inline]
BACIValue baci::BACIMonitor::getTriggerValue (  )  const [inline]
BACIValue baci::BACIMonitor::getTriggerValuePercent (  )  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

References ACS_TRACE.

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

References callbackID_m.

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::setTriggerOnValuePercent ( bool  enable  ) 
void baci::BACIMonitor::setTriggerTime ( const ACS::TimeInterval &  _triggerTime  ) 
void baci::BACIMonitor::setTriggerValue ( const BACIValue _triggerValue  ) 
void baci::BACIMonitor::setTriggerValuePercent ( const BACIValue _triggerValuePercent  ) 
void baci::BACIMonitor::setUpdateMode ( const UpdateMode _updateMode  ) 
void baci::BACIMonitor::suspend (  ) 

Friends And Related Function Documentation

friend class BACIProperty [friend]

Member Data Documentation

Referenced by operator=().

Referenced by operator=(), and operator==().

Referenced by operator=().

Referenced by operator=().

Referenced by operator=().

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

Referenced by operator=().

Referenced by operator=().

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

Referenced by operator=().

Referenced by operator=().

Referenced by operator=().

ACE_CString baci::BACIMonitor::name_m [private]

Referenced by operator=().

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

Referenced by operator=().

Referenced by operator=().

Referenced by operator=().

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

Referenced by operator=().

Referenced by operator=().

Referenced by operator=().

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

Referenced by operator=().

Referenced by operator=().

Referenced by operator=().

Referenced by operator=().

Referenced by operator=().


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