00001 #ifndef __CMWFWPOLLER_H__ 00002 #define __CMWFWPOLLER_H__ 00003 00004 #include "cmwfwTypes.h" 00005 #include "cmwfwSubscribtionManager.h" 00006 00007 00008 template <class T> class cmwfwList; 00009 00010 00011 class cmwfwPoller:protected cmwfwSubscribtionManager{ 00012 public: 00013 friend class cmwfwDeviceServer; 00014 00015 cmwfwPoller(); 00016 virtual ~cmwfwPoller(); 00017 00018 virtual bool isRunning() = 0; 00019 virtual void run() = 0; 00020 virtual void stop() = 0; 00021 00022 protected: 00023 void poll(); 00024 void poll(const cmwfwIOPoint& iop); 00025 void poll(cmwfwList<cmwfwIOPoint*>& list); 00026 00027 private: 00028 void processIOP(const cmwfwIOPoint& iop); 00029 void heaperr(int line); 00030 00031 }; 00032 00033 00034 #endif //ifndef __CMWFWPOLLER_H__