00001 // $Id: TGo4RootBrowserProxy.h 478 2009-10-29 12:26:09Z linev $ 00002 //----------------------------------------------------------------------- 00003 // The GSI Online Offline Object Oriented (Go4) Project 00004 // Experiment Data Processing at EE department, GSI 00005 //----------------------------------------------------------------------- 00006 // Copyright (C) 2000- GSI Helmholtzzentrum für Schwerionenforschung GmbH 00007 // Planckstr. 1, 64291 Darmstadt, Germany 00008 // Contact: http://go4.gsi.de 00009 //----------------------------------------------------------------------- 00010 // This software can be used under the license agreements as stated 00011 // in Go4License.txt file which is part of the distribution. 00012 //----------------------------------------------------------------------- 00013 00014 #ifndef TGO4ROOTBROWSERPROXY_H 00015 #define TGO4ROOTBROWSERPROXY_H 00016 00017 #include "TGo4Proxy.h" 00018 00019 class TGo4BrowserProxy; 00020 class TGo4Picture; 00021 class TGo4Condition; 00022 class TPad; 00023 class TCanvas; 00024 00025 class TGo4RootBrowserProxy : public TGo4Proxy { 00026 public: 00027 TGo4RootBrowserProxy(TGo4BrowserProxy* br = 0); 00028 00029 virtual ~TGo4RootBrowserProxy(); 00030 00031 virtual Bool_t ProcessEvent(TGo4Slot* slot, TGo4Slot* source, Int_t id, void* param); 00032 00033 void UnblockStatusOutput(); 00034 00035 void DrawPicture(const char* itemname, TGo4Picture* pic, TPad* pad); 00036 void DrawCondition(const char* itemname, TGo4Condition* con); 00037 void DrawItem(const char* itemname); 00038 00039 void Message(const char* str1, const char* str2, Int_t blockdelay); 00040 00041 protected: 00042 00043 static Int_t fCanvasCounter; 00044 00045 void UpdateRatemeter(TObject* obj); 00046 void UpdateLoginfo(TObject* obj); 00047 00048 TCanvas* MakeCanvas(const char* title = 0); 00049 00050 void SyncRootBrowserSlots(); 00051 00052 TGo4BrowserProxy* fBrowser; 00053 00054 Bool_t fLockMessage; 00055 00056 ClassDef(TGo4RootBrowserProxy, 1); 00057 00058 }; 00059 00060 #endif