GSI Object Oriented Online Offline (Go4)  GO4-6.1.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
TGo4AnalysisStatus.h
Go to the documentation of this file.
1 // $Id: TGo4AnalysisStatus.h 2627 2019-10-01 08:02:45Z linev $
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 fuer 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 TGO4ANALYSISSTATUS_H
15 #define TGO4ANALYSISSTATUS_H
16 
17 #include "TGo4Status.h"
18 #include "TString.h"
19 
20 class TIterator;
21 class TMutex;
23 class TObjArray;
24 
31 
32  friend class TGo4Analysis;
33 
34  public:
35 
38 
39  TGo4AnalysisStatus(const char* name);
40 
41  virtual ~TGo4AnalysisStatus();
42 
43  void SetStepChecking(Int_t on) { fbStepCheckingMode=on; }
44  Int_t IsStepChecking() const { return fbStepCheckingMode; }
45 
46  void SetFirstStepIndex(Int_t i) { fiFirstStepIndex=i; }
47  Int_t GetFirstStepIndex() const { return fiFirstStepIndex; }
48 
49  void SetLastStepIndex(Int_t i) { fiLastStepIndex=i; }
50  Int_t GetLastStepIndex() const { return fiLastStepIndex; }
51 
53  Int_t GetAutoSaveInterval() const { return fiAutoSaveInterval; }
54 
57 
58  void SetAutoSaveOverwrite(Bool_t over=kTRUE) { fbAutoSaveOverwrite = over ? 1 : 0; }
59  Int_t IsAutoSaveOverwrite() const { return fbAutoSaveOverwrite; }
60 
61  void SetAutoFileName(const char* name) { fxAutoFileName = name; }
62  const char* GetAutoFileName() const { return fxAutoFileName.Data(); }
63 
64  void SetConfigFileName(const char* name) { fxConfigFileName = name; }
65  const char* GetConfigFileName() const { return fxConfigFileName.Data(); }
66 
67  void SetAutoSaveOn(Bool_t on=kTRUE) { fbAutoSaveOn=on; }
68  Int_t IsAutoSaveOn() const { return fbAutoSaveOn; }
69 
71  TGo4AnalysisStepStatus* GetStepStatus(const char* name);
72 
75 
77  void ClearStepStatus();
78 
79  void ResetStepIterator();
80 
83 
85  Int_t GetNumberOfSteps();
86 
89 
92  virtual Int_t PrintStatus(Text_t* buffer=0, Int_t buflen=0);
93 
94 
95  protected:
96 
99  TObjArray* fxStepArray;
100 
102  TMutex * fxStepMutex;
103 
105  TIterator* fxStepIterator;
106 
112 
117 
123 
128 
131 
135 
139 
141  TString fxAutoFileName;
142 
145 
146  ClassDef(TGo4AnalysisStatus,4)
147 
148 };
149 
150 #endif //TGO4ANALYSISSTATUS_H
void SetAutoFileName(const char *name)
Int_t GetAutoSaveCompression() const
const char * GetConfigFileName() const
void SetAutoSaveOn(Bool_t on=kTRUE)
virtual Int_t PrintStatus(Text_t *buffer=0, Int_t buflen=0)
TGo4AnalysisStepStatus * NextStepStatus()
void SetFirstStepIndex(Int_t i)
const char * GetAutoFileName() const
Int_t IsAutoSaveOverwrite() const
void SetStepChecking(Int_t on)
Int_t IsStepChecking() const
Bool_t AddStepStatus(TGo4AnalysisStepStatus *next)
Int_t IsAutoSaveOn() const
Int_t GetLastStepIndex() const
TGo4AnalysisStepStatus * GetStepStatus(const char *name)
void SetAutoSaveOverwrite(Bool_t over=kTRUE)
void SetLastStepIndex(Int_t i)
void SetConfigFileName(const char *name)
void SetAutoSaveInterval(Int_t i)
void SetAutoSaveCompression(Int_t i=5)
Int_t GetAutoSaveInterval() const
Int_t GetFirstStepIndex() const