00001 #ifndef chopwsSTATUS_MONITOR_H 00002 #define chopwsSTATUS_MONITOR_H 00003 /******************************************************************************* 00004 * E.S.O. - VLT project 00005 * 00006 * "@(#) $Id: chopwsSTATUS_MONITOR.h,v 1.63 2003/11/12 09:04:01 vltsccm Exp $" 00007 * 00008 * who when what 00009 * -------- -------- ---------------------------------------------- 00010 * gchiozzi 02/09/97 Created 00011 */ 00012 00013 /************************************************************************ 00014 * 00015 *---------------------------------------------------------------------- 00016 */ 00017 #ifndef __cplusplus 00018 #error This is a C++ include file and cannot be used from plain C 00019 #endif 00020 00021 #include "chopwsACCESS.h" 00022 #include "eccsEvt.h" 00023 00024 class chopwsSTATUS_MONITOR: public chopwsACCESS 00025 { 00026 public: 00027 chopwsSTATUS_MONITOR(const dbSYMADDRESS dbPoint = dbEMPTY); 00028 virtual ~chopwsSTATUS_MONITOR(); 00029 00030 ccsCOMPL_STAT DbPoint(const dbSYMADDRESS point); 00031 virtual const char *DbPoint() const; 00032 00033 virtual vltINT32 Status(); 00034 00035 virtual ccsCOMPL_STAT StatusChanged(evhCALLBACK &cb); 00036 virtual vltINT32 NewStatus(); 00037 00038 virtual ccsCOMPL_STAT ParmChanged(evhCALLBACK &cb); 00039 00040 protected: 00041 virtual int _StatusChangedCB(evtEVENT_MSG &msg, void *udata); 00042 virtual int _ParmChangedCB(evtEVENT_MSG &msg, void *udata); 00043 00044 private: 00045 evtEVENT evtStatusChanged; 00046 evhCALLBACK *statusCb; 00047 vltINT32 newStatus; 00048 00049 evtEVENT evtParmChanged; 00050 evhCALLBACK *parmCb; 00051 }; 00052 00053 #endif