00001 // @(#)fROOT/GUI:$Name: $:$Id: TFndGeb2hdtGUI.h,v 1.7 2007/09/05 09:54:56 Diego_Faso Exp $ 00002 // Author: Diego Faso <mailto:faso@to.infn.it>, 2006/06/05 00003 00004 #ifndef FROOT_TFndGeb2hdtGUI 00005 #define FROOT_TFndGeb2hdtGUI 00006 00007 #ifndef ROOT_Gtypes 00008 #include "Gtypes.h" 00009 #endif 00010 00011 // --- root GUI 00012 #include <TGWindow.h> 00013 #include <TGFrame.h> 00014 #include <TGFileDialog.h> 00015 #include <TGMenu.h> 00016 #include <TGButton.h> 00017 #include <TGClient.h> 00018 #include <TGTextEntry.h> 00019 00020 #include "TFndGeb2hdtMan.h" 00021 00022 #include "FROOT.h" 00023 #include "Gui.h" 00024 using namespace FROOT; 00025 using namespace Gui; 00026 00027 class TFndGeb2hdtGUI: public TGMainFrame { 00028 00029 protected: 00030 TFndGeb2hdtMan *fCurMan; 00031 00032 TGVerticalFrame *fButFrame; // frame with buttons 00033 TGCompositeFrame *fTextFrame; // frame with buttons 00034 00035 TGTextButton *fStopBut; // Manually stop the producer 00036 TGTextButton *fPauseBut; // Manually stop the producer 00037 00038 // Shared memory histograms reset 00039 TGTextButton *fResetGtsBut; 00040 TGTextButton *fResetTofBut; 00041 TGTextButton *fResetSilBut; 00042 TGTextButton *fResetLmdBut; 00043 TGTextButton *fResetStbBut; 00044 00045 TGGroupFrame *fTextGroup; 00046 TGTextEntry *fTextMessages; 00047 00048 private: 00049 void RemapMainWindow(); 00050 void MakeConnections(); 00051 void WriteTextMessage(TString msg); 00052 void FlashTextMessage(TString msg,TString next_msg=0,Int_t time_ms=300); 00053 00054 public: 00055 TFndGeb2hdtGUI(); 00056 TFndGeb2hdtGUI(TFndGeb2hdtMan *Geb2hMan); 00057 ~TFndGeb2hdtGUI(); 00058 00059 // void HandleMouseActions(Event_t *event); 00060 // Bool_t HandleEvent(Event_t* event) { return kFALSE; } 00061 virtual void BuildGUI(); 00062 virtual void CloseWindow(); 00063 void ReceiveRealTimeInfo(Int_t Info_id); 00064 00065 ClassDef(TFndGeb2hdtGUI,0) 00066 }; 00067 00068 #endif // FROOT_TFndGeb2hdtGUI