126 delete gROOT->GetListOfSpecials()->FindObject(name);
127 gROOT->GetListOfSpecials()->Add(
this);
135 if (!ttitle) ttitle = ptitle->
GetLine(0);
137 const char *title = ttitle->
GetTitle();
138 Int_t nch = strlen(title);
139 char *vars =
new char[nch+1];
140 strlcpy(vars,title,nch+1);
141 char *col = strstr(vars,
":");
145 char *brak = strstr(col,
" {");
150 char *brak = strstr(vars,
" {");
167 delete gROOT->GetListOfSpecials()->FindObject(name);
168 gROOT->GetListOfSpecials()->Add(
this);
176 if (!ttitle) ttitle = ptitle->
GetLine(0);
178 const char *title = ttitle->
GetTitle();
179 Int_t nch = strlen(title);
180 char *vars =
new char[nch+1];
181 strlcpy(vars,title,nch+1);
182 char *col = strstr(vars,
":");
186 char *brak = strstr(col,
" {");
191 char *brak = strstr(vars,
" {");
208 delete gROOT->GetListOfSpecials()->FindObject(name);
209 gROOT->GetListOfSpecials()->Add(
this);
217 if (!ttitle) ttitle = ptitle->
GetLine(0);
219 const char *title = ttitle->
GetTitle();
220 Int_t nch = strlen(title);
221 char *vars =
new char[nch+1];
222 strlcpy(vars,title,nch+1);
223 char *col = strstr(vars,
":");
227 char *brak = strstr(col,
" {");
232 char *brak = strstr(vars,
" {");
248 gROOT->GetListOfSpecials()->Remove(
this);
276 for (
Int_t i=0;i<n-1;i++) {
277 a += (
fX[i]-
fX[i+1])*(
fY[i]+
fY[i+1]);
295 for (
Int_t i=0;i<n-1;i++) {
297 cx += (
fX[i]-
fX[i+1])*t;
298 cy += (-fY[i]+fY[i+1])*t;
299 a += (
fX[i]-
fX[i+1])*(fY[i]+fY[i+1]);
320 if (
fX[i] < xmin) xmin =
fX[i];
321 if (
fX[i] > xmax) xmax =
fX[i];
322 if (
fY[i] < ymin) ymin =
fY[i];
323 if (
fY[i] > ymax) ymax =
fY[i];
339 Int_t bin, binx, biny;
340 for (biny=biny1;biny<=biny2;biny++) {
342 for (binx=binx1;binx<=binx2;binx++) {
345 bin = binx +(nbinsx+2)*biny;
365 out<<
"cutg = new TCutG("<<quote<<
GetName()<<quote<<
","<<
fNpoints<<
");"<<std::endl;
366 out<<
" cutg->SetVarX("<<quote<<
GetVarX()<<quote<<
");"<<std::endl;
367 out<<
" cutg->SetVarY("<<quote<<
GetVarY()<<quote<<
");"<<std::endl;
368 out<<
" cutg->SetTitle("<<quote<<
GetTitle()<<quote<<
");"<<std::endl;
375 out<<
" cutg->SetPoint("<<i<<
","<<
fX[i]<<
","<<
fY[i]<<
");"<<std::endl;
378 <<quote<<option<<quote<<
");"<<std::endl;
422 void TCutG::Streamer(
TBuffer &R__b)
426 gROOT->GetListOfSpecials()->Add(
this);
TCutG()
TCutG default constructor.
Int_t fNpoints
Number of points <= fMaxSize.
virtual const char * GetName() const
Returns name of object.
Double_t * fX
[fNpoints] array of X points
virtual Int_t WriteClassBuffer(const TClass *cl, void *pointer)=0
virtual void SetObjectX(TObject *obj)
Set the X object (and delete the previous one if any).
virtual void SetName(const char *name)
Set the name of the TNamed.
TObject * fObjectX
! pointer to an object corresponding to X
Buffer base class used for serializing objects.
void ToLower()
Change string to lower-case.
virtual ~TCutG()
TCutG destructor.
virtual void SavePrimitive(std::ostream &out, Option_t *option="")
Save primitive as a C++ statement(s) on output stream out.
TCutG & operator=(const TCutG &)
Assignment operator.
const char * GetVarX() const
TGraph & operator=(const TGraph &)
Equal operator for this graph.
virtual void SaveLineAttributes(std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1, Int_t widdef=1)
Save line attributes as C++ statement(s) on output stream out.
virtual Double_t GetBinCenter(Int_t bin) const
Return center of bin.
virtual TText * GetLine(Int_t number) const
Get Pointer to line number in this pavetext.
virtual void SetVarY(const char *vary)
Set Y variable.
Base class for several text objects.
virtual void SaveMarkerAttributes(std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1, Int_t sizdef=1)
Save line attributes as C++ statement(s) on output stream out.
virtual Double_t IntegralHist(TH2 *h, Option_t *option="") const
Compute the integral of 2-d histogram h for all bins inside the cut if option "width" is specified...
const char * GetVarY() const
virtual TText * GetLineWith(const char *text) const
Get Pointer to first containing string text in this pavetext.
Service class for 2-Dim histogram classes.
Class to manage histogram axis.
if object ctor succeeded but object should not be used
virtual Double_t Area() const
Compute the area inside this TCutG The algorithm uses Stoke's theorem over the border of the closed p...
virtual void SetObjectY(TObject *obj)
Set the Y object (and delete the previous one if any).
virtual void SaveFillAttributes(std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1001)
Save fill attributes as C++ statement(s) on output stream out.
virtual void SetVarX(const char *varx)
Set X variable.
virtual Int_t FindBin(Double_t x)
Find bin number corresponding to abscissa x.
virtual Int_t ReadClassBuffer(const TClass *cl, void *pointer, const TClass *onfile_class=0)=0
A Pave (see TPave) with text, lines or/and boxes inside.
Bool_t Contains(const char *pat, ECaseCompare cmp=kExact) const
Mother of all ROOT objects.
virtual TObject * Clone(const char *newname="") const
Make a clone of an object using the Streamer facility.
virtual Double_t GetBinWidth(Int_t bin) const
Return bin width.
Double_t * fY
[fNpoints] array of Y points
TObject * fObjectY
! pointer to an object corresponding to Y
A Graph is a graphics object made of two arrays X and Y with npoints each.
virtual Double_t GetBinContent(Int_t bin) const
Return content of bin number bin.
virtual Int_t GetNbinsX() const
virtual Int_t IsInside(Double_t x, Double_t y) const
Return 1 if the point (x,y) is inside the polygon defined by the graph vertices 0 otherwise...
virtual void Center(Double_t &cx, Double_t &cy) const
Compute the center x,y of this TCutG The algorithm uses Stoke's theorem over the border of the closed...
TAxis * GetXaxis()
Get the behaviour adopted by the object about the statoverflows. See EStatOverflows for more informat...
virtual const char * GetTitle() const
Returns title of object.