GSI Object Oriented Online Offline (Go4)  GO4-5.3.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
TGo4PolyCond.h
Go to the documentation of this file.
1 // $Id: TGo4PolyCond.h 1922 2016-06-13 10:23:16Z 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 TGO4POLYCOND_H
15 #define TGO4POLYCOND_H
16 
17 #include "TGo4Condition.h"
18 
19 class TH1;
20 class TH2;
21 
22 class TGo4PolyCond : public TGo4Condition {
23  public:
24  TGo4PolyCond();
25 
26  TGo4PolyCond(const char* name, const char* title = "Go4 polygon condition");
27 
28  virtual ~TGo4PolyCond();
29 
32 
36  virtual void SetPainter(TGo4ConditionPainter* painter);
37 
38 // virtual void SetValues() {}
39 // virtual void SetValues(Double_t low1, Double_t up1) {}
40 // virtual void SetValues(Double_t low1, Double_t up1, Double_t low2, Double_t up2) {}
41 
43  virtual void SetValues(Double_t * x, Double_t * y, Int_t len);
44 
46  virtual void SetValues(TCutG * newcut);
47 
49  void SetValuesDirect(TCutG * newcut);
50 
51 // virtual Bool_t Test() { return true; }
52 // virtual Bool_t Test(Double_t x) { return true; }
53 // virtual Bool_t Test(Bool_t on) { return true; }
54 
56  virtual Bool_t Test(Double_t x, Double_t y);
57 
59  virtual Double_t GetXLow();
60 
62  virtual Double_t GetXUp();
63 
65  virtual Double_t GetYLow();
66 
68  virtual Double_t GetYUp();
69 
76  TCutG* GetCut(Bool_t changeowner);
77 
79  virtual void PrintCondition(Bool_t points = kTRUE);
80 
83  Bool_t UpdateFrom(TGo4Condition * cond, Bool_t counts);
84 
86  virtual Bool_t UpdateFromUrl(const char* rest_url_opt);
87 
88 
89 
91  virtual Double_t GetIntegral(TH1* histo, Option_t* opt="");
92 
94  virtual Double_t GetMean(TH1* histo, Int_t axis=1);
95 
97  virtual Double_t GetRMS(TH1* histo, Int_t axis=1);
98 
100  virtual Double_t GetSkewness(TH1* histo, Int_t axis=1);
101 
103  virtual Double_t GetCurtosis(TH1* histo, Int_t axis=1);
104 
106  virtual Double_t GetXMax(TH1* histo);
107 
109  virtual Double_t GetYMax(TH1* histo);
110 
112  virtual Double_t GetCMax(TH1* histo);
113 
114  virtual Bool_t IsPolygonType();
115 
116  virtual Int_t GetMemorySize();
117 
119  virtual void SavePrimitive(std::ostream& fs, Option_t* = "");
120 
123  static void CleanupSpecials();
124 
125  static TString NextAvailableName();
126 
127 
129  static TString fgxURL_NPOINTS;
131  static TString fgxURL_XPRE;
133  static TString fgxURL_YPRE;
134 
135  private:
139  TCutG * CloneCut(TGo4PolyCond * source);
140 
144  TH2* CreateCutHistogram(TH1* source);
145 
147  TCutG* fxCut;
148 
149  ClassDef(TGo4PolyCond,7)
150 };
151 
152 #endif //TGO4POLYCOND_H
virtual void PrintCondition(Bool_t points=kTRUE)
static TString fgxURL_XPRE
Definition: TGo4PolyCond.h:131
virtual Double_t GetXUp()
virtual Double_t GetIntegral(TH1 *histo, Option_t *opt="")
virtual Int_t GetMemorySize()
static TString NextAvailableName()
virtual Bool_t IsPolygonType()
TCutG * CloneCut(TGo4PolyCond *source)
void SetValuesDirect(TCutG *newcut)
TH2 * CreateCutHistogram(TH1 *source)
virtual Double_t GetYMax(TH1 *histo)
TCutG * fxCut
Definition: TGo4PolyCond.h:147
static void CleanupSpecials()
virtual void SetValues()
virtual Double_t GetXMax(TH1 *histo)
virtual Double_t GetRMS(TH1 *histo, Int_t axis=1)
TCutG * GetCut(Bool_t changeowner)
static TString fgxURL_YPRE
Definition: TGo4PolyCond.h:133
virtual Double_t GetYUp()
virtual Double_t GetSkewness(TH1 *histo, Int_t axis=1)
virtual Bool_t UpdateFromUrl(const char *rest_url_opt)
virtual void SetPainter(TGo4ConditionPainter *painter)
virtual Double_t GetCurtosis(TH1 *histo, Int_t axis=1)
virtual ~TGo4PolyCond()
virtual void SavePrimitive(std::ostream &fs, Option_t *="")
virtual Bool_t Test()
Bool_t UpdateFrom(TGo4Condition *cond, Bool_t counts)
virtual TGo4ConditionPainter * CreatePainter()
virtual Double_t GetCMax(TH1 *histo)
static TString fgxURL_NPOINTS
Definition: TGo4PolyCond.h:129
virtual Double_t GetXLow()
virtual Double_t GetYLow()
virtual Double_t GetMean(TH1 *histo, Int_t axis=1)