12 #ifndef ROOT_TGraphBentErrors
13 #define ROOT_TGraphBentErrors
25 class TGraphBentErrors :
public TGraph {
38 virtual void SwapPoints(Int_t pos1, Int_t pos2);
40 virtual Double_t** Allocate(Int_t size);
41 virtual void CopyAndRelease(Double_t **newarrays,
42 Int_t ibegin, Int_t iend, Int_t obegin);
43 virtual Bool_t CopyPoints(Double_t **arrays, Int_t ibegin, Int_t iend,
45 Bool_t CtorAllocate();
46 virtual void FillZero(Int_t begin, Int_t end,
47 Bool_t from_ctor = kTRUE);
48 virtual Bool_t DoMerge(
const TGraph * g);
53 TGraphBentErrors(Int_t n);
54 TGraphBentErrors(Int_t n,
55 const Float_t *x,
const Float_t *y,
56 const Float_t *exl=0,
const Float_t *exh=0,
57 const Float_t *eyl=0,
const Float_t *eyh=0,
58 const Float_t *exld=0,
const Float_t *exhd=0,
59 const Float_t *eyld=0,
const Float_t *eyhd=0);
60 TGraphBentErrors(Int_t n,
61 const Double_t *x,
const Double_t *y,
62 const Double_t *exl=0,
const Double_t *exh=0,
63 const Double_t *eyl=0,
const Double_t *eyh=0,
64 const Double_t *exld=0,
const Double_t *exhd=0,
65 const Double_t *eyld=0,
const Double_t *eyhd=0);
66 TGraphBentErrors(
const TGraphBentErrors &gr);
67 virtual ~TGraphBentErrors();
68 virtual void Apply(TF1 *f);
69 virtual void ComputeRange(Double_t &xmin, Double_t &ymin,
70 Double_t &xmax, Double_t &ymax)
const;
71 Double_t GetErrorX(Int_t bin)
const;
72 Double_t GetErrorY(Int_t bin)
const;
73 Double_t GetErrorXlow(Int_t bin)
const;
74 Double_t GetErrorXhigh(Int_t bin)
const;
75 Double_t GetErrorYlow(Int_t bin)
const;
76 Double_t GetErrorYhigh(Int_t bin)
const;
77 Double_t *GetEXlow()
const {
return fEXlow;}
78 Double_t *GetEXhigh()
const {
return fEXhigh;}
79 Double_t *GetEYlow()
const {
return fEYlow;}
80 Double_t *GetEYhigh()
const {
return fEYhigh;}
81 Double_t *GetEXlowd()
const {
return fEXlowd;}
82 Double_t *GetEXhighd()
const {
return fEXhighd;}
83 Double_t *GetEYlowd()
const {
return fEYlowd;}
84 Double_t *GetEYhighd()
const {
return fEYhighd;}
85 virtual void Print(Option_t *chopt=
"")
const;
86 virtual void SavePrimitive(std::ostream &out, Option_t *option =
"");
87 virtual void SetPointError(Double_t exl, Double_t exh,
88 Double_t eyl, Double_t eyh,
89 Double_t exld=0, Double_t exhd=0,
90 Double_t eyld=0, Double_t eyhd=0);
91 virtual void SetPointError(Int_t i,
92 Double_t exl, Double_t exh,
93 Double_t eyl, Double_t eyh,
94 Double_t exld=0, Double_t exhd=0,
95 Double_t eyld=0, Double_t eyhd=0);
97 ClassDef(TGraphBentErrors,1)
100 inline Double_t **TGraphBentErrors::Allocate(Int_t size) {
101 return AllocateArrays(10, size);