Main Page | Alphabetical List | Class List | Directories | File List | Class Members | File Members

TGo4AbstractInterface.h

Go to the documentation of this file.
00001 #ifndef TGO4ABSTRACTINTERFACE_H
00002 #define TGO4ABSTRACTINTERFACE_H
00003 
00004 #include "TObject.h"
00005
00006 #include "TString.h"
00007 #include "TList.h"
00008
00009 class TGo4ObjectManager;
00010 class TGo4BrowserProxy;
00011 class TGo4AnalysisProxy;
00012 class TPad;
00013 class TGo4Picture;
00014
00015 typedef void* ViewPanelHandle;
00016
00017
00061 class TGo4AbstractInterface : public TObject {
00062    protected:
00064       TGo4AbstractInterface();
00065
00066       static TGo4AbstractInterface* fgInstance;
00067
00068       void Initialize(TGo4ObjectManager* om, TGo4BrowserProxy* br);
00069
00070       virtual void ProcessEvents(Int_t timeout = -1) = 0;
00071
00072       Bool_t LoadHotStart(const char* filename);
00073       Bool_t IsHotStart();
00074       const char* NextHotStartCmd();
00075       void FreeHotStartCmds();
00076
00077    public:
00078
00080       virtual ~TGo4AbstractInterface();
00081
00085       static TGo4AbstractInterface* Instance();
00086
00088       static void DeleteInstance();
00089
00093       TGo4ObjectManager* OM() const { return fOM; }
00094
00099       TGo4BrowserProxy* Browser() const { return fBrowser; }
00100
00104       TGo4AnalysisProxy* Analysis();
00105
00110       virtual void HotStart(const char* filename) = 0;
00111
00112       // general purpose
00113
00115       virtual void LoadLibrary(const char* fname);
00116
00119       virtual void OpenFile(const char* fname);
00120
00125       virtual TString FindItem(const char* objname);
00126
00129       virtual Bool_t CopyItem(const char* itemname);
00130
00133       virtual Bool_t DeleteItem(const char* itemname);
00134
00142       virtual void FetchItem(const char* itemname, Int_t wait_time = 2000);
00143
00153       virtual TObject* GetObject(const char* itemname, Int_t updatelevel = 1);
00154
00163       virtual TString SaveToMemory(const char* path, TObject* obj, Bool_t ownership = kFALSE);
00164
00171       virtual Bool_t SaveToFile(const char* itemname,
00172                                 const char* filename,
00173                                 const char* filetitle = 0);
00174
00187       virtual Bool_t ExportToFile(const char* itemname,
00188                                   const char* dirpath,
00189                                   const char* format,
00190                                   const char* filetitle = 0);
00191
00201       virtual void ConnectHServer(const char* servername,
00202                           Int_t portnumber,
00203                           const char* basename,
00204                           const char* userpass,
00205                           const char* filter);
00206
00210       virtual void Wait(double tm_sec) {}
00211
00213       virtual void Message(const char* msg) {}
00214
00215       // analysis start and configuration
00216
00219       virtual void LaunchAnalysis() {}
00220
00229       virtual void LaunchAnalysis(const char* ClientName,
00230                           const char* ClientDir,
00231                           const char* ClientExec,
00232                           const char* ClientNode,
00233                           Int_t ShellMode =  2,      // 1 = rsh  2 = ssh
00234                           Int_t TermMode = 1)  {}     // 1 = Qt   2 = Xterm 3 = konsole
00235
00242       virtual void ConnectAnalysis(const char* ServerNode,
00243                            Int_t ServerPort,
00244                            Int_t UserMode,  // 0 - obsrver, 1- controller, 2 - administrator
00245                            const char* password = 0)  {}
00246
00252       virtual void WaitAnalysis(Int_t delay_sec) {}
00253
00255       virtual Bool_t IsAnalysisConnected();
00256
00259       virtual void DisconnectAnalysis() {}
00260
00264       virtual void ShutdownAnalysis() {}
00265
00270       virtual void ExecuteLine(const char* remotecmd);
00271
00273       virtual void RequestAnalysisConfig();
00274
00296       virtual void SubmitAnalysisConfig() {}
00297
00299       virtual void StartAnalysis() {}
00300
00302       virtual void StopAnalysis() {}
00303
00307       virtual void SetAnalysisTerminalMode(int mode) {}
00308
00312       virtual void SetAnalysisConfigMode(int mode) {}
00313
00317       virtual void MonitorItem(const char* itemname, Bool_t on = kTRUE);
00318
00322       virtual void StartMonitoring(Int_t period = 10);
00323
00325       virtual void StopMonitoring();
00326
00328       virtual void AnalysisAutoSave(const char* filename,
00329                             Int_t interval,
00330                             Int_t compression,
00331                             Bool_t enabled,
00332                             Bool_t overwrite) {}
00333
00335       virtual void AnalysisConfigName(const char* filename) {}
00336
00337       // steps configuration
00338
00340       virtual void ConfigStep(const char* stepname,
00341                       Bool_t enableprocess,
00342                       Bool_t enablesource,
00343                       Bool_t enablestore) {}
00344
00346       virtual void StepFileSource(const char* stepname,
00347                           const char* sourcename,
00348                           int timeout) {}
00349
00351       virtual void StepMbsFileSource(const char* stepname,
00352                              const char* sourcename,
00353                              int timeout,
00354                              const char* TagFile,
00355                              int start,
00356                              int stop,
00357                              int interval) {}
00358
00360       virtual void StepMbsStreamSource(const char* stepname,
00361                                const char* sourcename,
00362                                int timeout) {}
00363
00365       virtual void StepMbsTransportSource(const char* stepname,
00366                                   const char* sourcename,
00367                                   int timeout) {}
00368
00370       virtual void StepMbsEventServerSource(const char* stepname,
00371                                     const char* sourcename,
00372                                     int timeout) {}
00373
00375       virtual void StepMbsRevServSource(const char* stepname,
00376                                 const char* sourcename,
00377                                 int timeout,
00378                                 int port) {}
00379
00381       virtual void StepRandomSource(const char* stepname,
00382                             const char* sourcename,
00383                             int timeout) {}
00384
00386       virtual void StepUserSource(const char* stepname,
00387                           const char* sourcename,
00388                           int timeout,
00389                           int port,
00390                           const char* expr) {}
00391
00393       virtual void StepFileStore(const char* stepname,
00394                          const char* storename,
00395                          bool overwrite,
00396                          int bufsize,
00397                          int splitlevel,
00398                          int compression) {}
00399
00401       virtual void StepBackStore(const char* stepname,
00402                          const char* storename,
00403                          int bufsize,
00404                          int splitlevel) {}
00405
00406       // windows management
00407
00411       virtual ViewPanelHandle StartViewPanel() { return 0; }
00412
00423       virtual ViewPanelHandle StartViewPanel(int x, int y, int width, int height, int mode = 1, TGo4Picture* pic = 0) { return 0; }
00424
00426       virtual TString GetViewPanelName(ViewPanelHandle panel) { return TString(); }
00427
00429       virtual ViewPanelHandle FindViewPanel(const char* name) { return 0; }
00430
00432       virtual Bool_t SetViewPanelName(ViewPanelHandle panel, const char* newname) { return kFALSE; }
00433
00435       virtual ViewPanelHandle GetActiveViewPanel() { return 0; }
00436
00438       virtual void RedrawPanel(ViewPanelHandle panel) {}
00439
00441       virtual void DivideViewPanel(ViewPanelHandle panel, Int_t numX, Int_t numY) {}
00442
00447       virtual TPad* SelectPad(ViewPanelHandle panel, Int_t number = 0) { return 0; }
00448
00450       virtual void SetSuperimpose(ViewPanelHandle panel, Bool_t on = kTRUE) {}
00451
00457       virtual Bool_t DrawItem(const char* itemname, ViewPanelHandle panel = 0, const char* drawopt = 0) { return kFALSE; }
00458
00462       virtual void RedrawItem(const char* itemname);
00463
00464    private:
00465       TGo4ObjectManager* fOM;
00466       TGo4BrowserProxy* fBrowser;
00467       TList  fxCommands;
00468
00469    ClassDef(TGo4AbstractInterface, 1);
00470 };
00471
00472
00473 #endif

Generated on Thu Feb 22 09:16:53 2007 for Go4GUIabstractinterface by  doxygen 1.4.2