00001
00019 #ifndef __DSME_DEVICE_HH__
00020 #define __DSME_DEVICE_HH__
00021
00022
00023
00024 #define loginfo(sev,fmt,args...) syslog(LOG_LOCAL1 | sev, "%s::%s:%d: " fmt , __FILE__, __FUNCTION__, __LINE__, ##args)
00025
00026 #ifdef WIN32
00027 #include <platform.h>
00028 #endif
00029
00030 #include <syslog.h>
00031 #include <string>
00032 #include <global-types.h>
00033 #include <accdevice.hh>
00034 #include <x86device.hh>
00035 #include <dsme-dev-def.hh>
00036 #include <dsme-usrs-version.hh>
00037 #include <gsiID.h>
00038 #include <dsme-helper.hh>
00039
00040 namespace DeviceAccess
00041 {
00042 namespace EqModDSME
00043 {
00044 class E_API DSMEDevice : public X86Device
00045 {
00046 private:
00047 DevDataType* _devDataP;
00048 gsiID* _devDSMEP;
00049 void readDevConst();
00050
00051
00052
00053 public:
00054 explicit DSMEDevice(const string& name);
00055 ~DSMEDevice();
00056 void setDevDataP();
00057 virtual void setDevConstants();
00058
00059 virtual ULong initDevice();
00060 virtual ULong resetDevice();
00061 virtual ULong getStatus(AccData& outData);
00062 virtual ULong getVersionStrings(AccData& outData);
00063 virtual ULong updateStatus();
00064 virtual ULong updateDevConst();
00065 virtual ULong readStatusAlarmMask();
00066
00067 DevDataType* devDataP() {return _devDataP;};
00068 DevConst* devConstP() {return &devDataP()->devConst;};
00069 gsiID* devDSMEP() {return _devDSMEP;};
00070 };
00071
00072 }
00073 }
00074 #endif // __DSME_DEVICE_HH__