GSI Object Oriented Online Offline (Go4)  GO4-5.3.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
TGo4AnalysisImp.h
Go to the documentation of this file.
1 // $Id: TGo4AnalysisImp.h 1905 2016-04-27 07:54:31Z adamczew $
2 //-----------------------------------------------------------------------
3 // The GSI Online Offline Object Oriented (Go4) Project
4 // Experiment Data Processing at EE department, GSI
5 //-----------------------------------------------------------------------
6 // Copyright (C) 2000- GSI Helmholtzzentrum f�r Schwerionenforschung GmbH
7 // Planckstr. 1, 64291 Darmstadt, Germany
8 // Contact: http://go4.gsi.de
9 //-----------------------------------------------------------------------
10 // This software can be used under the license agreements as stated
11 // in Go4License.txt file which is part of the distribution.
12 //-----------------------------------------------------------------------
13 
14 #ifndef TGO4ANALYSISIMP_H
15 #define TGO4ANALYSISIMP_H
16 
17 #include "TGo4CommandReceiver.h"
18 #include "TObject.h"
19 #include "TString.h"
20 
21 class TH1;
22 class TH2;
23 class TTree;
24 class TCanvas;
25 class TFolder;
26 class TNamed;
27 class TMutex;
28 class TStopwatch;
29 class TFile;
30 
35 class TGo4AnalysisStatus;
37 class TGo4AnalysisStep;
38 class TGo4AnalysisClient;
40 class TGo4DynamicEntry;
41 class TGo4Condition;
42 class TGo4WinCond;
43 class TGo4PolyCond;
44 class TGo4ShapedCond;
45 class TGo4Parameter;
47 class TGo4Picture;
48 class TGo4Fitter;
49 class TGo4ObjectStatus;
53 class TGo4EventElement;
54 class TGo4EventStore;
55 class TGo4EventSource;
56 class TGo4EventProcessor;
57 class TGo4TreeStructure;
60 class TGo4Sniffer;
61 class TGo4Ratemeter;
62 
73 class TGo4Analysis : public TObject, public TGo4CommandReceiver {
74 
75  friend class TGo4AnalysisStep;
76  friend class TGo4AnalysisClient;
77  friend class TGo4ComGetCurrentEvent;
78  friend class TGo4ComGetNamesList;
79  friend class TGo4ComGetEnvelope;
80  friend class TGo4ComSetObject;
82  friend class TGo4HistogramServer;
83  friend class TGo4AnalysisWebStatus;
84  friend class TGo4Sniffer;
85 
86  public:
87 
89  static const Int_t fgiAUTOSAVECOUNTS;
90 
92  static const Int_t fgiDYNLISTINTERVAL;
93 
95  static const Int_t fgiMACROSTARTPOLL;
96 
98  static const char* fgcDEFAULTFILENAME;
99 
101  static const char* fgcDEFAULTSTATUSFILENAME;
102 
104  static const char* fgcDEFAULTFILESUF;
105 
107  static const char* fgcTOPDYNAMICLIST;
108 
110  static const char fgcPYPROMPT;
111 
113  static const char* fgcPYINIT;
114 
115  static TGo4Analysis* Instance();
116 
117  static Bool_t Exists();
118 
120  static Bool_t IsBatchMode();
121 
123  static Bool_t IsClientMode();
124 
126  static Bool_t IsServerMode();
127 
128  static void SetRunningMode(int mode);
129 
130  virtual ~TGo4Analysis();
131 
132  virtual const char* GetName() const { return fAnalysisName.Data(); }
133 
134  void SetAnalysisName(const char* name) { fAnalysisName = name; }
135 
139  Int_t MainCycle();
140 
143  Int_t PreLoop();
144 
147  Int_t PostLoop();
148 
153  Int_t Process();
154 
160  virtual Int_t UserEventFunc();
161 
164  virtual Int_t UserPreLoop();
165 
168  virtual Int_t UserPostLoop();
169 
176  Int_t RunImplicitLoop(Int_t times, Bool_t showrate = kFALSE, Double_t process_event_interval = -1., Bool_t iswebserver=kFALSE);
177 
180  virtual void CloseAnalysis();
181 
185  virtual Bool_t InitEventClasses();
186 
189 
199  Bool_t AddDynamicHistogram(const char* name,
200  const char* histo,
201  const char* hevx, const char* hmemx,
202  const char* hevy=0, const char* hmemy=0,
203  const char* hevz=0, const char* hmemz=0,
204  const char* condition=0,
205  const char* cevx=0, const char* cmemx=0,
206  const char* cevy=0, const char* cmemy=0);
207 
212  Bool_t AddDynamicEntry(TGo4DynamicEntry* entry);
213 
217  Bool_t RemoveDynamicEntry(const char* entryname, const char* listname=0);
218 
225  Bool_t AddObject(TNamed * anything, const char* subfolder=0, Bool_t replace=kTRUE);
226 
231  TNamed * GetObject(const char* name, const char* folder=0);
232 
236  Bool_t RemoveObject(const char* name, Bool_t del=kTRUE);
237 
242  Bool_t DeleteObjects(const char * name);
243 
248  Bool_t ClearObjects(const char* name);
249 
257  Bool_t ProtectObjects(const char* name, const Option_t* flags);
258 
262  Bool_t ResetBackStores(Bool_t clearflag=kFALSE);
263 
270  TObject* NextMatchingObject(const char* expr=0,
271  const char* folder=0,
272  Bool_t reset=kFALSE);
273 
275  TGo4TreeStructure* CreateTreeStructure(const char* treename);
276 
279  Bool_t AddHistogram(TH1* his , const char* subfolder=0, Bool_t replace=kTRUE);
280 
286  Bool_t AddTree(TTree* tree, const char* subfolder=0);
287 
292  Bool_t RemoveTree(TTree * tree, const char* stepname=0);
293 
298  Bool_t AddTreeHistogram(const char* hisname, const char* treename, const char* varexp, const char* cutexp);
299 
301  TH1* GetHistogram(const char* name);
302 
304  TTree * GetTree(const char* name);
305 
309  Bool_t RemoveHistogram(const char* name, Bool_t del=kTRUE);
310 
314  Bool_t AddAnalysisCondition(TGo4Condition * con, const char* subfolder=0);
315 
320  Bool_t SetAnalysisCondition(const char* name, TGo4Condition* con, Bool_t counter=kTRUE);
321 
325  TGo4Condition * GetAnalysisCondition(const char* name, const char* cond_cl = 0);
326 
329  Bool_t RemoveAnalysisCondition(const char* name);
330 
334  Bool_t AddParameter(TGo4Parameter * par, const char* subfolder=0);
335 
340  Bool_t SetParameter(const char* name, TGo4Parameter * par);
341 
346  Bool_t SetParameterStatus(const char* name, TGo4ParameterStatus* par);
347 
351  TGo4Parameter * GetParameter(const char* name, const char* parameter_class = 0);
352 
355  Bool_t RemoveParameter(const char* name);
356 
360  Bool_t AddPicture(TGo4Picture * pic, const char* subfolder=0);
361 
366  Bool_t SetPicture(const char* name, TGo4Picture * pic);
367 
370  TGo4Picture * GetPicture(const char* name);
371 
374  Bool_t RemovePicture(const char * name);
375 
379  Bool_t AddCanvas(TCanvas * can, const char* subfolder=0);
380 
383  TCanvas * GetCanvas(const char* name);
384 
387  Bool_t RemoveCanvas(const char * name);
388 
392 
396 
400  TGo4ObjectStatus* CreateObjectStatus(const char * name, const char* folder=0);
401 
404 
406  TFolder * GetObjectFolder();
407 
409  void UpdateStatus(TGo4AnalysisStatus* state);
410 
419  void SetStatus(TGo4AnalysisStatus * state);
420 
423  Bool_t LoadStatus(const char* filename=0);
424 
427  Bool_t LoadObjects(const char* filename=0);
428 
430  Bool_t SaveStatus(const char* filename=0);
431 
435  void SetStepChecking(Bool_t on=kTRUE);
436 
440  Bool_t SetFirstStep(const char* name);
441 
446  Bool_t SetLastStep(const char* name);
447 
458  Bool_t SetStepStorage(const char* name, Bool_t on);
459 
463  Bool_t NewStepStore(const char* name, TGo4EventStoreParameter* par);
464 
468  Bool_t NewStepSource(const char* name, TGo4EventSourceParameter * par);
469 
473  Bool_t NewStepProcessor(const char* name, TGo4EventProcessorParameter * par);
474 
476  void SetAutoSaveInterval(Int_t interval=0) { fiAutoSaveInterval=interval; }
477 
479  void SetAutoSaveFile(const char* filename=0,
480  Bool_t overwrite=kFALSE,
481  Int_t compression=5);
482 
484  Bool_t IsAutoSaveFileName() const;
485 
487  Int_t LockAutoSave();
488 
490  Int_t UnLockAutoSave();
491 
493  void SetAutoSave(Bool_t on=kTRUE) { fbAutoSaveOn=on; }
494 
496  Bool_t IsAutoSaveOn() const { return fbAutoSaveOn; }
497 
499  void SetAutoSaveFileChange(Bool_t on=kTRUE) {fbAutoSaveFileChange=on;}
500 
503  Bool_t IsAutoSaveFileChange() const { return fbAutoSaveFileChange; }
504 
506  Bool_t IsInitDone() const { return fbInitIsDone; }
507 
512  Bool_t IsRunning();
513 
517  void SetRunning(Bool_t on=kTRUE);
518 
522  Int_t WaitForStart();
523 
525  Int_t IsErrorStopEnabled();
526 
528  void SetNewInputFile(Bool_t on=kTRUE) { fbNewInputFile=on; }
529 
531  Bool_t IsNewInputFile() const { return fbNewInputFile; }
532 
534  void SetInputFileName(const char* fname) { fxCurrentInputFileName = fname; }
535 
537  const char* GetInputFileName() const { return fxCurrentInputFileName.Data(); }
538 
540  const char* GetDefaultTestFileName() const { return fxDefaultTestFileName.Data(); }
541 
542  void SetDynListInterval(Int_t val);
543 
544  Int_t GetDynListInterval();
545 
549  TGo4EventElement* GetInputEvent(const char* stepname);
550 
555  TGo4EventElement* GetInputEvent(Int_t stepindex);
556 
561  TGo4EventElement* GetOutputEvent(const char* stepname);
562 
569  TGo4EventElement* GetOutputEvent(Int_t stepindex);
570 
575 
577  TGo4EventElement * GetEventStructure(const char * name);
578 
585  void Message(Int_t prio, const char* text,...);
586 
589  void SendObjectToGUI(TObject* ob);
590 
593  void StartObjectServer(const char* basename, const char* passwd);
594 
596  void StopObjectServer();
597 
600  void SetAdministratorPassword(const char* passwd);
601 
604  void SetControllerPassword(const char* passwd);
605 
608  void SetObserverPassword(const char* passwd);
609 
610 
612  virtual void Print(Option_t* opt="") const;
613 
615  void PrintHistograms(const char* expression = 0);
616 
618  void PrintConditions(const char* expression = 0);
619 
621  void PrintParameters(const char* expression = 0);
622 
624  void PrintDynamicList();
625 
631  void ShowEvent(const char* stepname, Bool_t isoutput=kTRUE);
632 
637  Int_t StoreParameter(const char * name, TGo4Parameter* par);
638 
643  Int_t StoreCondition(const char * name, TGo4Condition* con);
644 
649  Int_t StoreFitter(const char * name, TGo4Fitter* fit);
650 
655  Int_t StoreFolder(const char * stepname, TFolder* folder);
656 
660  Int_t StoreFolder(const char * stepname, const char* foldername);
661 
664  void AutoSave();
665 
673  Bool_t AddAnalysisStep(TGo4AnalysisStep* next);
674 
677  TGo4AnalysisStep* GetAnalysisStep(const char* name);
678 
680  TGo4AnalysisStep* GetAnalysisStepNum(Int_t number);
681 
683  void DefineServerPasswords(const char* admin, const char* controller, const char* observer);
684 
686  void SetBatchLoopCount(Int_t cnt = -1) { fBatchLoopCount = cnt; }
687 
689  void SetMakeWithAutosave(Bool_t on = kTRUE) { fbMakeWithAutosave = on; }
690 
693  Bool_t IsObjMade() { return fbObjMade; }
694 
708  TH1* MakeTH1(char type, const char* fullname, const char* title,
709  Int_t nbinsx, Double_t xlow, Double_t xup,
710  const char* xtitle = 0, const char* ytitle = 0);
711 
726  TH2* MakeTH2(char type, const char* fullname, const char* title,
727  Int_t nbinsx, Double_t xlow, Double_t xup,
728  Int_t nbinsy, Double_t ylow, Double_t yup,
729  const char* xtitle = 0, const char* ytitle = 0, const char* ztitle = 0);
730 
736  TGo4WinCond* MakeWinCond(const char* fullname,
737  Double_t xmin, Double_t xmax,
738  const char* HistoName = 0);
739 
746  TGo4WinCond* MakeWinCond(const char* fullname,
747  Double_t xmin, Double_t xmax,
748  Double_t ymin, Double_t ymax,
749  const char* HistoName = 0);
750 
761  TGo4PolyCond* MakePolyCond(const char* fullname,
762  Int_t npoints,
763  Double_t (*points) [2],
764  const char* HistoName = 0,
765  Bool_t shapedcond=kFALSE);
766 
767 
768 
777  TGo4ShapedCond* MakeEllipseCond(const char* fullname,
778  Int_t npoints,
779  Double_t cx, Double_t cy, Double_t a1, Double_t a2, Double_t theta=0,
780  const char* HistoName = 0);
781 
789  TGo4ShapedCond* MakeCircleCond(const char* fullname,
790  Int_t npoints, Double_t cx, Double_t cy, Double_t r,
791  const char* HistoName = 0);
792 
800  TGo4ShapedCond* MakeBoxCond(const char* fullname, Double_t cx, Double_t cy, Double_t a1, Double_t a2, Double_t theta,
801  const char* HistoName = 0);
802 
814  TGo4ShapedCond* MakeFreeShapeCond(const char* fullname,
815  Int_t npoints,
816  Double_t (*points) [2],
817  const char* HistoName = 0);
818 
831  TGo4Parameter* MakeParameter(const char* fullname,
832  const char* classname,
833  const char* cmd = 0);
834 
837  Long_t ExecuteScript(const char* script_name);
838 
842  Long_t ExecutePython(const char* script_name, Int_t* errcode=0);
843 
844 
849  Long_t ExecuteLine(const char* command, Int_t* errcode=0);
850 
851 
853  void ProcessCrtlCSignal();
854 
856  void SetSniffer(TGo4AnalysisSniffer* sniff) { fSniffer = sniff; }
857 
860 
863 
865  void StopAnalysis();
866 
868  void StartAnalysis();
869 
871  void ProcessEvents();
872 
873  protected:
874 
877  Bool_t fbInitIsDone;
878 
881  Bool_t fbAutoSaveOn;
882 
884  TGo4Analysis(const char* name = 0);
885 
887  TGo4Analysis(int argc, char** argv);
888 
890  void Constructor();
891 
892 
898  Int_t ProcessAnalysisSteps();
899 
900  private:
901 
908  TTree* CreateSingleEventTree(const char* name, Bool_t isoutput=kTRUE);
909 
912 
914  void UpdateNamesList();
915 
919 
923  void SetOutputEvent(TGo4EventElement * event);
924 
927  Bool_t AddEventStore(TGo4EventStore * store);
928 
930  Bool_t RemoveEventStore(TGo4EventStore * store);
931 
934  Bool_t AddEventSource(TGo4EventSource * source);
935 
937  Bool_t RemoveEventSource(TGo4EventSource* source);
938 
942 
945 
948  Bool_t AddEventStructure(TGo4EventElement * ev);
949 
952 
955 
960  void SendMessageToGUI(Int_t level, Bool_t printout, const char* text);
961 
963  void OpenAutoSaveFile(bool for_writing = false);
964 
966  void CloseAutoSaveFile();
967 
970 
972  Bool_t IsStopWorking() const { return fxDoWorkingFlag == flagStop; }
973 
974  /* for signal handler to shutdown analysis server, if existing*/
975  void ShutdownServer();
976 
979 
983  static Bool_t fbExists;
984 
987  static Int_t fiRunningMode;
988 
991 
995 
999 
1002 
1004  TStopwatch* fxAutoSaveClock;
1005 
1010 
1013 
1018 
1020  TFile* fxAutoFile;
1021 
1023  TString fxAutoFileName;
1024 
1027 
1030 
1034 
1037 
1041 
1045 
1049 
1052 
1055 
1057  TString fAnalysisName;
1058 
1061 
1064 
1067 
1070 
1073 
1075  Bool_t fbObjMade;
1076 
1078  Bool_t fbPythonBound;
1079 
1081  Int_t fNumCtrlC;
1082 
1085 
1088 
1091 
1093 };
1094 
1095 #endif
Bool_t AddTreeHistogram(const char *hisname, const char *treename, const char *varexp, const char *cutexp)
Bool_t IsInitDone() const
void SetRunning(Bool_t on=kTRUE)
ClassDef(TGo4Sniffer, 1)
TH1 * MakeTH1(char type, const char *fullname, const char *title, Int_t nbinsx, Double_t xlow, Double_t xup, const char *xtitle=0, const char *ytitle=0)
void PrintParameters(const char *expression=0)
static const Int_t fgiMACROSTARTPOLL
void SetMakeWithAutosave(Bool_t on=kTRUE)
TGo4Analysis(const char *name=0)
static Bool_t IsServerMode()
Bool_t IsAutoSaveFileChange() const
static const char * fgcPYINIT
void SetAutoSaveFileChange(Bool_t on=kTRUE)
Bool_t NewStepProcessor(const char *name, TGo4EventProcessorParameter *par)
TGo4ShapedCond * MakeFreeShapeCond(const char *fullname, Int_t npoints, Double_t(*points)[2], const char *HistoName=0)
Bool_t SetStepStorage(const char *name, Bool_t on)
Bool_t LoadStatus(const char *filename=0)
Bool_t AddCanvas(TCanvas *can, const char *subfolder=0)
TGo4ShapedCond * MakeCircleCond(const char *fullname, Int_t npoints, Double_t cx, Double_t cy, Double_t r, const char *HistoName=0)
virtual Int_t UserPreLoop()
TGo4AnalysisClient * fxAnalysisSlave
Bool_t IsAutoSaveOn() const
void SetAnalysisName(const char *name)
void SetOutputEvent(TGo4EventElement *event)
void DefineServerPasswords(const char *admin, const char *controller, const char *observer)
Bool_t RemoveParameter(const char *name)
Bool_t AddParameter(TGo4Parameter *par, const char *subfolder=0)
void UpdateStatus(TGo4AnalysisStatus *state)
Bool_t SetParameter(const char *name, TGo4Parameter *par)
TGo4ShapedCond * MakeEllipseCond(const char *fullname, Int_t npoints, Double_t cx, Double_t cy, Double_t a1, Double_t a2, Double_t theta=0, const char *HistoName=0)
virtual void CloseAnalysis()
TGo4AnalysisSniffer * GetSniffer() const
Int_t StoreFolder(const char *stepname, TFolder *folder)
Bool_t LoadObjects(const char *filename=0)
TGo4TreeStructure * CreateTreeStructure(const char *treename)
void SetObserverPassword(const char *passwd)
Int_t StoreParameter(const char *name, TGo4Parameter *par)
TGo4InterruptHandler * fxInterruptHandler
Bool_t AddDynamicHistogram(const char *name, const char *histo, const char *hevx, const char *hmemx, const char *hevy=0, const char *hmemy=0, const char *hevz=0, const char *hmemz=0, const char *condition=0, const char *cevx=0, const char *cmemx=0, const char *cevy=0, const char *cmemy=0)
void SetControllerPassword(const char *passwd)
TString fServerCtrlPass
static const char * fgcDEFAULTSTATUSFILENAME
Int_t IsErrorStopEnabled()
void SendMessageToGUI(Int_t level, Bool_t printout, const char *text)
void SetStepChecking(Bool_t on=kTRUE)
static Bool_t IsClientMode()
TGo4AnalysisObjectNames * fxObjectNames
Int_t StoreFitter(const char *name, TGo4Fitter *fit)
void SetSniffer(TGo4AnalysisSniffer *sniff)
Bool_t RemoveEventSource(TGo4EventSource *source)
void ShowEvent(const char *stepname, Bool_t isoutput=kTRUE)
TString fServerAdminPass
TString fxDefaultTestFileName
Bool_t SetParameterStatus(const char *name, TGo4ParameterStatus *par)
TString fxConfigFilename
Bool_t RemoveAnalysisCondition(const char *name)
TGo4AnalysisClient * GetAnalysisClient() const
TGo4AnalysisObjectManager * fxObjectManager
virtual Int_t UserEventFunc()
Bool_t SetFirstStep(const char *name)
Bool_t IsStopWorking() const
TH2 * MakeTH2(char type, const char *fullname, const char *title, Int_t nbinsx, Double_t xlow, Double_t xup, Int_t nbinsy, Double_t ylow, Double_t yup, const char *xtitle=0, const char *ytitle=0, const char *ztitle=0)
Int_t fiAutoSaveInterval
TGo4AnalysisStepManager * fxStepManager
void PrintHistograms(const char *expression=0)
void SetDynListInterval(Int_t val)
TGo4AnalysisObjectNames * CreateNamesList()
TMutex * fxAutoSaveMutex
TGo4EventElement * GetOutputEvent()
TTree * CreateSingleEventTree(const char *name, Bool_t isoutput=kTRUE)
Bool_t fbMakeWithAutosave
Bool_t RemoveEventStructure(TGo4EventElement *ev)
TGo4Condition * GetAnalysisCondition(const char *name, const char *cond_cl=0)
TGo4AnalysisStep * GetAnalysisStep(const char *name)
static const char * fgcTOPDYNAMICLIST
void SetAdministratorPassword(const char *passwd)
Bool_t AddHistogram(TH1 *his, const char *subfolder=0, Bool_t replace=kTRUE)
Long_t ExecutePython(const char *script_name, Int_t *errcode=0)
static const char fgcPYPROMPT
void SetNewInputFile(Bool_t on=kTRUE)
void ProcessCrtlCSignal()
Bool_t SetAnalysisCondition(const char *name, TGo4Condition *con, Bool_t counter=kTRUE)
TString fxAutoFileName
Bool_t IsNewInputFile() const
Bool_t ResetBackStores(Bool_t clearflag=kFALSE)
static const char * fgcDEFAULTFILENAME
TGo4Parameter * MakeParameter(const char *fullname, const char *classname, const char *cmd=0)
TGo4EventElement * GetEventStructure(const char *name)
static const char * fgcDEFAULTFILESUF
TH1 * GetHistogram(const char *name)
Int_t RunImplicitLoop(Int_t times, Bool_t showrate=kFALSE, Double_t process_event_interval=-1., Bool_t iswebserver=kFALSE)
TGo4EventElement * GetInputEvent(const char *stepname)
TCanvas * GetCanvas(const char *name)
TStopwatch * fxAutoSaveClock
const char * GetInputFileName() const
void SetAutoSave(Bool_t on=kTRUE)
Bool_t AddObject(TNamed *anything, const char *subfolder=0, Bool_t replace=kTRUE)
Bool_t RemoveEventStore(TGo4EventStore *store)
void SendObjectToGUI(TObject *ob)
TString fServerObserverPass
Bool_t AddEventStructure(TGo4EventElement *ev)
void Message(Int_t prio, const char *text,...)
Bool_t AddEventSource(TGo4EventSource *source)
Bool_t AddPicture(TGo4Picture *pic, const char *subfolder=0)
void OpenAutoSaveFile(bool for_writing=false)
Bool_t AddAnalysisCondition(TGo4Condition *con, const char *subfolder=0)
Int_t StoreCondition(const char *name, TGo4Condition *con)
Bool_t AddEventProcessor(TGo4EventProcessor *pro)
TGo4Parameter * GetParameter(const char *name, const char *parameter_class=0)
Long_t ExecuteScript(const char *script_name)
TTree * GetTree(const char *name)
static Bool_t IsBatchMode()
Bool_t DeleteObjects(const char *name)
static Bool_t fbExists
Bool_t RemoveCanvas(const char *name)
Bool_t RemoveEventProcessor(TGo4EventProcessor *pro)
TString fAnalysisName
virtual Int_t UserPostLoop()
void StartObjectServer(const char *basename, const char *passwd)
Bool_t ClearObjects(const char *name)
TGo4Picture * GetPicture(const char *name)
TGo4Ratemeter * fxRate
Int_t fiAutoSaveCompression
void SetInputFileName(const char *fname)
virtual const char * GetName() const
static TGo4Analysis * fxInstance
Bool_t AddTree(TTree *tree, const char *subfolder=0)
TGo4AnalysisObjectManager * ObjectManager() const
Bool_t RemoveTree(TTree *tree, const char *stepname=0)
TGo4ShapedCond * MakeBoxCond(const char *fullname, Double_t cx, Double_t cy, Double_t a1, Double_t a2, Double_t theta, const char *HistoName=0)
virtual ~TGo4Analysis()
TGo4AnalysisSniffer * fSniffer
TGo4ObjectStatus * CreateObjectStatus(const char *name, const char *folder=0)
virtual Bool_t InitEventClasses()
virtual void Print(Option_t *opt="") const
Bool_t NewStepStore(const char *name, TGo4EventStoreParameter *par)
TObject * NextMatchingObject(const char *expr=0, const char *folder=0, Bool_t reset=kFALSE)
void SetAnalysisClient(TGo4AnalysisClient *cli)
static Int_t fiRunningMode
Bool_t RemoveObject(const char *name, Bool_t del=kTRUE)
Bool_t IsAutoSaveFileName() const
Long_t ExecuteLine(const char *command, Int_t *errcode=0)
void SetAutoSaveFile(const char *filename=0, Bool_t overwrite=kFALSE, Int_t compression=5)
const char * GetDefaultTestFileName() const
TGo4AnalysisStep * GetAnalysisStepNum(Int_t number)
Bool_t AddAnalysisStep(TGo4AnalysisStep *next)
Bool_t ProtectObjects(const char *name, const Option_t *flags)
Bool_t SetPicture(const char *name, TGo4Picture *pic)
Bool_t SaveStatus(const char *filename=0)
TGo4AnalysisObjectNames * GetNamesList() const
Bool_t RemoveDynamicEntry(const char *entryname, const char *listname=0)
Bool_t fbAutoSaveOverwrite
void SetBatchLoopCount(Int_t cnt=-1)
TString fxCurrentInputFileName
TNamed * GetObject(const char *name, const char *folder=0)
Bool_t AddDynamicEntry(TGo4DynamicEntry *entry)
TGo4AnalysisStatus * CreateStatus()
static Bool_t Exists()
Bool_t RemoveHistogram(const char *name, Bool_t del=kTRUE)
Int_t ProcessAnalysisSteps()
enum TGo4Analysis::@0 fxDoWorkingFlag
Bool_t AddEventStore(TGo4EventStore *store)
static const Int_t fgiDYNLISTINTERVAL
static void SetRunningMode(int mode)
static TGo4Analysis * Instance()
TGo4EventElement * fxSampleEvent
static const Int_t fgiAUTOSAVECOUNTS
Int_t GetDynListInterval()
TGo4AnalysisWebStatus * CreateWebStatus()
TGo4PolyCond * MakePolyCond(const char *fullname, Int_t npoints, Double_t(*points)[2], const char *HistoName=0, Bool_t shapedcond=kFALSE)
Bool_t IsObjMade()
Bool_t NewStepSource(const char *name, TGo4EventSourceParameter *par)
Bool_t fbAutoSaveFileChange
void PrintConditions(const char *expression=0)
TFolder * GetObjectFolder()
Bool_t RemovePicture(const char *name)
Bool_t SetLastStep(const char *name)
void SetAutoSaveInterval(Int_t interval=0)
TGo4WinCond * MakeWinCond(const char *fullname, Double_t xmin, Double_t xmax, const char *HistoName=0)
void SetStatus(TGo4AnalysisStatus *state)