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

baci::AlarmSystemMonitor< TPROP > Class Template Reference

#include <baciAlarmSystemMonitor_T.h>

Inheritance diagram for baci::AlarmSystemMonitor< TPROP >:

Inheritance graph
[legend]
Collaboration diagram for baci::AlarmSystemMonitor< TPROP >:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 AlarmSystemMonitor (TPROP *property, EventDispatcher *eventDispatcher)
virtual ~AlarmSystemMonitor ()
bool failed ()
void succeeded ()
virtual bool isSuspended ()
virtual int getId (void)
virtual const char * getName (void)
virtual char * getObjectState (void)
virtual void setObjectState (const char *state)
virtual void suspend ()
virtual void resume ()
virtual void destroy ()
virtual void check (BACIValue &val, const ACSErr::Completion &c, const ACS::CBDescOut &desc)=0
void sendAlarm (std::string family, std::string member, int code, bool active)

Protected Attributes

auto_ptr< acsalarm::AlarmSystemInterfacealarmSource_map
TPROP * property_mp
int alarmRaised_m

Private Member Functions

void operator= (const AlarmSystemMonitor &)
 AlarmSystemMonitor (const AlarmSystemMonitor &)

Private Attributes

ACE_CString name_m
bool suspended_m
int failureCount_m
CBDescIn desc_mIn
ACS::TimeInterval interval_m
EventDispatchereventDispatcher_mp

Detailed Description

template<class TPROP>
class baci::AlarmSystemMonitor< TPROP >

Common class for the Alarm System Monitors. Implementation classes have only to implement check method. The purpose of this class or better its implementation is to send alarms to the ACS alarm system


Constructor & Destructor Documentation

template<class TPROP>
baci::AlarmSystemMonitor< TPROP >::AlarmSystemMonitor TPROP *  property,
EventDispatcher eventDispatcher
 

template<class TPROP>
virtual baci::AlarmSystemMonitor< TPROP >::~AlarmSystemMonitor  )  [virtual]
 

template<class TPROP>
baci::AlarmSystemMonitor< TPROP >::AlarmSystemMonitor const AlarmSystemMonitor< TPROP > &   )  [private]
 

ALMA C++ coding standards state copy constructors should be disabled.


Member Function Documentation

template<class TPROP>
virtual void baci::AlarmSystemMonitor< TPROP >::check BACIValue val,
const ACSErr::Completion c,
const ACS::CBDescOut desc
[pure virtual]
 

Event cheking method This virtual method is called periodically to check property state if event should be raised

Implements baci::EventStrategy.

Implemented in baci::AlarmSystemMonitorCont< T, TPROP >, baci::AlarmSystemMonitorDisc< T, TPROP >, baci::AlarmSystemMonitorSeqCont< T, TPROP >, baci::AlarmSystemMonitorSeqDisc< TPROP >, baci::AlarmSystemMonitorEnumProp< T, TPROP >, baci::AlarmSystemMonitorCont< TS, PropType >, baci::AlarmSystemMonitorSeqCont< TM, PropType >, baci::AlarmSystemMonitorSeqDisc< TM, PropType >, and baci::AlarmSystemMonitorEnumProp< T, ROEnumImpl< ACS_ENUM_T(T), SK > >.

template<class TPROP>
virtual void baci::AlarmSystemMonitor< TPROP >::destroy  )  [inline, virtual]
 

Destroy event subscription

Implements baci::EventStrategy.

template<class TPROP>
bool baci::AlarmSystemMonitor< TPROP >::failed  ) 
 

template<class TPROP>
virtual int baci::AlarmSystemMonitor< TPROP >::getId void   )  [inline, virtual]
 

Get object's "recovery" id; each object type sould have unique id

Returns:
object's id

Implements baci::EventStrategy.

template<class TPROP>
virtual const char* baci::AlarmSystemMonitor< TPROP >::getName void   )  [inline, virtual]
 

Returns objects name; each instance should have unique name

Returns:
object's name

Implements baci::EventStrategy.

template<class TPROP>
virtual char* baci::AlarmSystemMonitor< TPROP >::getObjectState void   )  [inline, virtual]
 

Get object's state represented as string

Returns:
pointer to stringified object's state

Implements baci::EventStrategy.

template<class TPROP>
virtual bool baci::AlarmSystemMonitor< TPROP >::isSuspended  )  [inline, virtual]
 

Is suspended

Implements baci::EventStrategy.

template<class TPROP>
void baci::AlarmSystemMonitor< TPROP >::operator= const AlarmSystemMonitor< TPROP > &   )  [private]
 

ALMA C++ coding standards state assignment operators should be disabled.

template<class TPROP>
virtual void baci::AlarmSystemMonitor< TPROP >::resume  )  [inline, virtual]
 

Resume suspended event subscription

Implements baci::EventStrategy.

template<class TPROP>
void baci::AlarmSystemMonitor< TPROP >::sendAlarm std::string  family,
std::string  member,
int  code,
bool  active
 

Send an alarm to the AlarmSystem

template<class TPROP>
virtual void baci::AlarmSystemMonitor< TPROP >::setObjectState const char *  state  )  [inline, virtual]
 

Set object's state stored in given string

Parameters:
stringified object's state

Implements baci::EventStrategy.

template<class TPROP>
void baci::AlarmSystemMonitor< TPROP >::succeeded  ) 
 

template<class TPROP>
virtual void baci::AlarmSystemMonitor< TPROP >::suspend  )  [inline, virtual]
 

Suspend event subscription

Implements baci::EventStrategy.


Member Data Documentation

template<class TPROP>
int baci::AlarmSystemMonitor< TPROP >::alarmRaised_m [protected]
 

template<class TPROP>
auto_ptr<acsalarm::AlarmSystemInterface> baci::AlarmSystemMonitor< TPROP >::alarmSource_map [protected]
 

template<class TPROP>
CBDescIn baci::AlarmSystemMonitor< TPROP >::desc_mIn [private]
 

template<class TPROP>
EventDispatcher* baci::AlarmSystemMonitor< TPROP >::eventDispatcher_mp [private]
 

template<class TPROP>
int baci::AlarmSystemMonitor< TPROP >::failureCount_m [private]
 

template<class TPROP>
ACS::TimeInterval baci::AlarmSystemMonitor< TPROP >::interval_m [private]
 

template<class TPROP>
ACE_CString baci::AlarmSystemMonitor< TPROP >::name_m [private]
 

template<class TPROP>
TPROP* baci::AlarmSystemMonitor< TPROP >::property_mp [protected]
 

template<class TPROP>
bool baci::AlarmSystemMonitor< TPROP >::suspended_m [private]
 


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