00001
#ifndef _baciROcommonImpl_T_H_
00002
#define _baciROcommonImpl_T_H_
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00034
#ifndef __cplusplus
00035
#error This is a C++ include file and cannot be used from plain C
00036
#endif
00037
00038
#include "baciAlarm_T.h"
00039
#include <baciPcommonImpl_T.h>
00040
#include <baciErrTypeDevIO.h>
00041
#include <baciErrTypeProperty.h>
00042
00043
00044
00048 #define ACS_RO_T(T, TC) TC, ACS::CB##T, ACS::T##Seq, ACS::T##Seq_out, ACS::Monitor##T, baci::Monitor##T, TC, TC, TC, POA_ACS::RO##T, ACS::Alarm##T, POA_ACS::CB##T, TC
00049
00053 #define ACS_RO_TL ACS_P_TL, TAlarm, POA_CB, TIN
00054
00055
00056
00060 #define ACS_RO_C ACS_P_C, class TAlarm, class POA_CB, class TIN
00061
00062
namespace baci {
00063
00069
template<ACS_RO_C>
00070 class baci_EXPORT ROcommonImpl :
public virtual POA_SK,
00071
public PcommonImpl<ACS_P_TL>
00072 {
00073
public:
00079
00080
00086 ROcommonImpl(
const ACE_CString& name,
BACIComponent *component_p,
DevIO<TM> *devIO,
bool flagdeldevIO);
00087
00092 ROcommonImpl(
bool init,
const ACE_CString& name,
BACIComponent *component_p,
DevIO<TM> *devIO,
bool flagdeldevIO);
00093
00097
virtual ~ROcommonImpl();
00098
00099
00100
00101
protected:
00102
00108
virtual bool readCharacteristics();
00109
00110
protected:
00111
00113 EventDispatcher * monitorEventDispatcher_mp;
00114
00115
00116 ACS::TimeInterval alarmTimerTrig_m;
00117
00118
private:
00122
void operator=(
const ROcommonImpl&);
00123
00127 ROcommonImpl(
const ROcommonImpl&);
00128 };
00129
00130 };
00131
00132
#endif
00133
00134
00135
00136
00137
00138
00139
00140