GSI Object Oriented Online Offline (Go4)  GO4-6.2.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
TGo4CondArray.h
Go to the documentation of this file.
1 // $Id: TGo4CondArray.h 2836 2020-05-15 14:49:44Z 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 TGO4CONDARRAY_H
15 #define TGO4CONDARRAY_H
16 
17 #include "TGo4Condition.h"
18 
19 class TObjArray;
20 class TGo4PolyCond;
21 class TGo4WinCond;
22 
23 class TGo4CondArray : public TGo4Condition {
24  public:
25  TGo4CondArray();
26 
28  TGo4CondArray(const char* name, Int_t elements, const char* type);
29 
31  TGo4CondArray(const char* name, Int_t elements, Int_t contype);
32 
33  virtual ~TGo4CondArray();
34 
37 
39  virtual void Draw(Option_t* opt="");
40 
44  virtual void SetPainter(TGo4ConditionPainter* painter);
45 
48 
53  TGo4Condition * At(Int_t i);
54 
60  TGo4WinCond* Win(Int_t i);
61 
66  TGo4PolyCond* Poly(Int_t i);
67 
72  TGo4Condition * operator[](Int_t i);
73 
74  using TGo4Condition::Test;
80  virtual Bool_t Test(Double_t x, Double_t y);
81 
87  virtual Bool_t Test(Double_t x);
88 
90 // virtual Bool_t Test(Bool_t arg) { return true; }
91 
92 
93  virtual Double_t GetXLow();
94  virtual Double_t GetXUp();
95  virtual Double_t GetYLow();
96  virtual Double_t GetYUp();
97 
99 // virtual void SetValues() {}
100 
102 
104  virtual void SetValues(Double_t low1, Double_t up1);
105 
107  virtual void SetValues(Double_t low1, Double_t up1, Double_t low2, Double_t up2);
108 
110  virtual void SetValues(TCutG * newcut);
111 
113 // virtual void SetValues(Double_t * x, Double_t * y, Int_t len) {}
114 
115 
121  void PrintCondition(Bool_t points);
122 
124  virtual void PrintBar();
125 
126 
129  virtual Int_t GetNumberOfConditions();
130 
135  Int_t GetNumber() const;
136 
138  const char* GetType() const;
139 
141  void GetType(Int_t& type) const;
142 
144  virtual void Enable();
145 
147  virtual void Disable(Bool_t result);
148 
150  virtual void Invert(Bool_t on);
151 
153  virtual void MarkReset(Bool_t on);
154 
156  virtual void ResetCounts();
157 
160  virtual Int_t Counts();
161 
164  virtual Int_t TrueCounts();
165 
167  virtual void GetFlags(Bool_t* enabled, Bool_t* lastresult, Bool_t* markreset,
168  Bool_t* result, Bool_t* truevalue, Bool_t* falsevalue);
169 
171  virtual void SetVisible(Bool_t on);
172 
174  virtual Bool_t IsVisible();
175 
177  virtual void SetChanged(Bool_t on = kTRUE);
178 
180  virtual Int_t IsChanged();
181 
182  virtual void SetLabelDraw(Bool_t on);
183  virtual Bool_t IsLabelDraw();
184  virtual void SetLimitsDraw(Bool_t on);
185  virtual Bool_t IsLimitsDraw();
186  virtual void SetIntDraw(Bool_t on);
187  virtual Bool_t IsIntDraw();
188  virtual void SetXMeanDraw(Bool_t on);
189  virtual Bool_t IsXMeanDraw();
190  virtual void SetXRMSDraw(Bool_t on);
191  virtual Bool_t IsXRMSDraw();
192  virtual void SetYMeanDraw(Bool_t on);
193  virtual Bool_t IsYMeanDraw();
194  virtual void SetYRMSDraw(Bool_t on);
195  virtual Bool_t IsYRMSDraw();
196  virtual void SetXMaxDraw(Bool_t on);
197  virtual Bool_t IsXMaxDraw();
198  virtual void SetYMaxDraw(Bool_t on);
199  virtual Bool_t IsYMaxDraw();
200  virtual void SetCMaxDraw(Bool_t on);
201  virtual Bool_t IsCMaxDraw();
202 
205  virtual Double_t GetIntegral(TH1* histo, Option_t* opt="");
206 
208  virtual Double_t GetMean(TH1* histo, Int_t axis=1);
209 
211  virtual Double_t GetRMS(TH1* histo, Int_t axis=1);
212 
214  virtual Double_t GetSkewness(TH1* histo, Int_t axis=1);
215 
217  virtual Double_t GetCurtosis(TH1* histo, Int_t axis=1);
218 
220  virtual Double_t GetXMax(TH1* histo);
221 
223  virtual Double_t GetYMax(TH1* histo);
224 
226  virtual Double_t GetCMax(TH1* histo);
227 
228  virtual Bool_t IsPolygonType();
229  virtual Bool_t IsArrayType();
230 
231  virtual void SetCurrentIndex(Int_t ix);
232  virtual Int_t GetCurrentIndex();
233 
234  virtual Bool_t UpdateFrom(TGo4Condition * cond, Bool_t counts);
235 
236  virtual Int_t GetMemorySize();
237 
239  virtual void SavePrimitive(std::ostream& fs, Option_t* = "");
240 
241  private:
243  TObjArray* condarr;
244 
246  Int_t fiNumCond;
247 
249  Int_t fiType;
250 
253 
254  ClassDef(TGo4CondArray,6)
255 };
256 
257 #endif //TGO4CONDARRAY_H
virtual Double_t GetRMS(TH1 *histo, Int_t axis=1)
virtual void Enable()
virtual Int_t TrueCounts()
virtual void MarkReset(Bool_t on)
virtual void SetIntDraw(Bool_t on)
virtual Bool_t IsVisible()
virtual Bool_t IsXMaxDraw()
const char * GetType() const
virtual Bool_t IsXRMSDraw()
virtual void SetLimitsDraw(Bool_t on)
void PrintCondition(Bool_t points)
virtual Bool_t IsXMeanDraw()
virtual void GetFlags(Bool_t *enabled, Bool_t *lastresult, Bool_t *markreset, Bool_t *result, Bool_t *truevalue, Bool_t *falsevalue)
virtual void SetYRMSDraw(Bool_t on)
virtual void SetXMaxDraw(Bool_t on)
virtual ~TGo4CondArray()
virtual Double_t GetYMax(TH1 *histo)
virtual Bool_t IsLimitsDraw()
virtual void SetPainter(TGo4ConditionPainter *painter)
virtual Int_t Counts()
virtual Double_t GetXMax(TH1 *histo)
TGo4WinCond * Win(Int_t i)
virtual void SetValues()
Definition: TGo4Condition.h:93
virtual Double_t GetIntegral(TH1 *histo, Option_t *opt="")
virtual Bool_t UpdateFrom(TGo4Condition *cond, Bool_t counts)
virtual void SetVisible(Bool_t on)
virtual Bool_t IsIntDraw()
virtual Double_t GetXLow()
TObjArray * condarr
virtual Bool_t IsArrayType()
virtual void SetYMeanDraw(Bool_t on)
virtual void SavePrimitive(std::ostream &fs, Option_t *="")
virtual TGo4Condition * GetActiveCondition()
virtual void PrintBar()
virtual Double_t GetMean(TH1 *histo, Int_t axis=1)
virtual Double_t GetCurtosis(TH1 *histo, Int_t axis=1)
virtual Int_t GetNumberOfConditions()
virtual void SetChanged(Bool_t on=kTRUE)
virtual void Invert(Bool_t on)
virtual void Disable(Bool_t result)
virtual Bool_t IsYMaxDraw()
virtual Double_t GetYLow()
virtual Bool_t IsCMaxDraw()
virtual void SetCMaxDraw(Bool_t on)
virtual void SetYMaxDraw(Bool_t on)
virtual Bool_t IsYRMSDraw()
virtual Double_t GetSkewness(TH1 *histo, Int_t axis=1)
virtual Bool_t IsLabelDraw()
virtual void Draw(Option_t *opt="")
virtual void SetXMeanDraw(Bool_t on)
virtual TGo4ConditionPainter * CreatePainter()
TGo4PolyCond * Poly(Int_t i)
virtual Bool_t Test()
virtual void SetXRMSDraw(Bool_t on)
virtual Bool_t IsPolygonType()
TGo4Condition * At(Int_t i)
virtual void SetCurrentIndex(Int_t ix)
virtual Bool_t IsYMeanDraw()
virtual Double_t GetXUp()
virtual void SetLabelDraw(Bool_t on)
Int_t fiSelectedCond
virtual Double_t GetCMax(TH1 *histo)
virtual Int_t IsChanged()
TGo4Condition * operator[](Int_t i)
Int_t GetNumber() const
virtual void ResetCounts()
virtual Int_t GetMemorySize()
virtual Double_t GetYUp()
virtual Int_t GetCurrentIndex()