#ifndef ROOT_TGraphErrors
#define ROOT_TGraphErrors
#ifndef ROOT_TGraph
#include "TGraph.h"
#endif
class TGraphErrors : public TGraph {
protected:
Double_t *fEX;
Double_t *fEY;
virtual void SwapPoints(Int_t pos1, Int_t pos2);
virtual Double_t** Allocate(Int_t size);
virtual void CopyAndRelease(Double_t **newarrays,
Int_t ibegin, Int_t iend, Int_t obegin);
virtual Bool_t CopyPoints(Double_t **arrays, Int_t ibegin, Int_t iend,
Int_t obegin);
Bool_t CtorAllocate();
virtual void FillZero(Int_t begin, Int_t end,
Bool_t from_ctor = kTRUE);
virtual Bool_t DoMerge(const TGraph * g);
public:
TGraphErrors();
TGraphErrors(Int_t n);
TGraphErrors(Int_t n, const Float_t *x, const Float_t *y, const Float_t *ex=0, const Float_t *ey=0);
TGraphErrors(Int_t n, const Double_t *x, const Double_t *y, const Double_t *ex=0, const Double_t *ey=0);
TGraphErrors(const TVectorF &vx, const TVectorF &vy, const TVectorF &vex, const TVectorF &vey);
TGraphErrors(const TVectorD &vx, const TVectorD &vy, const TVectorD &vex, const TVectorD &vey);
TGraphErrors(const TGraphErrors &gr);
TGraphErrors& operator=(const TGraphErrors &gr);
TGraphErrors(const TH1 *h);
TGraphErrors(const char *filename, const char *format="%lg %lg %lg %lg", Option_t *option="");
virtual ~TGraphErrors();
virtual void Apply(TF1 *f);
static Int_t CalculateScanfFields(const char *fmt);
virtual void ComputeRange(Double_t &xmin, Double_t &ymin, Double_t &xmax, Double_t &ymax) const;
Double_t GetErrorX(Int_t bin) const;
Double_t GetErrorY(Int_t bin) const;
Double_t GetErrorXhigh(Int_t bin) const;
Double_t GetErrorXlow(Int_t bin) const;
Double_t GetErrorYhigh(Int_t bin) const;
Double_t GetErrorYlow(Int_t bin) const;
Double_t *GetEX() const {return fEX;}
Double_t *GetEY() const {return fEY;}
virtual void Print(Option_t *chopt="") const;
virtual void SavePrimitive(ostream &out, Option_t *option = "");
virtual void SetPointError(Double_t ex, Double_t ey);
virtual void SetPointError(Int_t i, Double_t ex, Double_t ey);
ClassDef(TGraphErrors,3)
};
inline Double_t **TGraphErrors::Allocate(Int_t size) {
return AllocateArrays(4, size);
}
#endif