00001 #ifndef FEREADTAGSTHREAD_H 00002 #define FEREADTAGSTHREAD_H 00003 00004 #include <QMutex> 00005 #include <QThread> 00006 #include <QWaitCondition> 00007 00008 class FEDM_ISCReader; 00009 00010 class FEReadTagsThread : public QThread 00011 { 00012 Q_OBJECT 00013 00014 public: 00015 FEReadTagsThread(FEDM_ISCReader* reader, QObject *parent = 0); 00016 ~FEReadTagsThread(); 00017 void readTags(); 00018 void pauseThread(); 00019 bool running(); 00020 00021 signals: 00022 void onNewData(int iStatus); 00023 void onError(int iStatus); 00024 00025 protected: 00026 void run(); 00027 00028 private: 00029 QMutex m_mutex; 00030 QWaitCondition m_condition; 00031 bool m_bRunning; 00032 bool m_bFinish; 00033 bool m_bWait; 00034 FEDM_ISCReader* m_iscReader; 00035 }; 00036 00037 #endif