00001 #ifndef _QGD_RECEIVER_HH_ 00002 #define _QGD_RECEIVER_HH_ 00003 00011 #include <Rtypes.h> 00012 00013 class TThread; 00014 class TMessage; 00015 class TSocket; 00016 class QGDMessageHandler; 00017 00018 class QGDReceiver { 00019 public: 00020 QGDReceiver(QGDMessageHandler*); 00021 virtual ~QGDReceiver(); 00022 00023 void Stop(); 00024 void Start(Int_t port = 1130); 00025 00026 enum Status { 00027 ST_UNKNOWN = 0, 00028 ST_STOP = 1, 00029 ST_WAITCLIENT = 2, 00030 ST_CONNECTED = 3, 00031 }; 00032 Status GetStatus() { return fStatus; } 00033 00034 private: 00035 void SetStatus(Status status); 00036 00037 static void* WaitNewData(void*); 00038 static void* GetNewData(void*); 00039 TMessage* fMessage; 00040 TSocket* fSocket; 00041 Status fStatus; 00042 QGDMessageHandler* fMainFrame; 00043 Int_t fPort; 00044 00045 TThread* fReceiveThread; 00046 TThread* fGetNewDataThread; 00047 00048 ClassDef(QGDReceiver,0); 00049 }; 00050 00051 #endif