Hi Thomas,
In the version under CVS, I have made the following changes:
hist/inc/TAxis.h hist/src/TAxis.cxx
Make the following functions const
void GetCenter(Axis_t *center) const;
void GetLowEdge(Axis_t *edge) const;
const TArrayD *GetXbins() const {return &fXbins;}
hist/inc/TH1.h hist/src/TH1.cxx
Make the following functions const
void Add(const TH1 *h1, Double_t c1=1);
void Add(const TH1 *h1, const TH1 *h2, Double_t c1=1, Double_t
c2=1); // *MENU*
void Divide(const TH1 *h1);
void Divide(const TH1 *h1, const TH1 *h2, Double_t c1=1, Double_t
c2=1, Option_t *option=""); // *MENU*
void GetLowEdge(Axis_t *edge) const {fXaxis.GetLowEdge(edge);}
Stat_t Integral(Option_t *option="") const;
Stat_t Integral(Int_t binx1, Int_t binx2, Option_t *option="") const;
Stat_t Integral(Int_t, Int_t, Int_t, Int_t, Option_t * /*option*/
="") const {return 0;}
Stat_t Integral(Int_t, Int_t, Int_t, Int_t, Int_t, Int_t, Option_t *
/*option*/ ="" ) const {return 0;}
void Multiply(const TH1 *h1);
void Multiply(const TH1 *h1, const TH1 *h2, Double_t c1=1, Double_t
c2=1, Option_t *option=""); // *MENU*
hist/inc/TH2.h hist/src/TH2.cxx
Make the following functions const
Stat_t Integral(Option_t *option="") const;
Stat_t Integral(Int_t, Int_t, Option_t *option="") const {return 0;}
Stat_t Integral(Int_t binx1, Int_t binx2, Int_t biny1, Int_t biny2,
Option_t *option="") const;
Stat_t Integral(Int_t, Int_t, Int_t, Int_t, Int_t, Int_t, Option_t
*option="") const {return 0;}
TProfile *ProfileX(const char *name="_pfx", Int_t firstybin=-1, Int_t
lastybin=9999, Option_t *option="") const; // *MENU*
TProfile *ProfileY(const char *name="_pfy", Int_t firstxbin=-1, Int_t
lastxbin=9999, Option_t *option="") const ; // *MENU
TH1D *ProjectionX(const char *name="_px", Int_t firstybin=-1, Int_t
lastybin=9999, Option_t *option="") const; // *MENU*
TH1D *ProjectionY(const char *name="_py", Int_t firstxbin=-1, Int_t
lastxbin=9999, Option_t *option="") const; // *MENU*
hist/inc/TH3.h hist/src/TH3.cxx
Make the following functions const
Stat_t Integral(Option_t *option="") const;
Stat_t Integral(Int_t, Int_t, Option_t *option="") const {return 0;}
Stat_t Integral(Int_t, Int_t, Int_t, Int_t, Option_t *option="") const
{return 0;}
Stat_t Integral(Int_t binx1, Int_t binx2, Int_t biny1, Int_t biny2,
Int_t binz1, Int_t binz2, Option_t *option="") const;
TH1 *Project3D(Option_t *option="x") const; // *MENU*
hist/inc/TProfile.h hist/src/TProfile.cxx
Make the following functions const
void Add(const TH1 *h1, Double_t c1=1);
void Add(const TH1 *h1, const TH1 *h2, Double_t c1=1, Double_t c2=1);
// *MENU*
void Divide(const TH1 *h1);
void Divide(const TH1 *h1, const TH1 *h2, Double_t c1=1, Double_t
c2=1, Option_t *option=""); // *MENU*
void Multiply(const TH1 *h1);
void Multiply(const TH1 *h1, const TH1 *h2, Double_t c1=1, Double_t
c2=1, Option_t *option=""); // *MENU*
TH1D *ProjectionX(const char *name="_px", Option_t *option="e") const;
hist/inc/TProfile2D.h hist/src/TProfile2D.cxx
Make the following functions const
void Add(const TH1 *h1, Double_t c1=1);
void Add(const TH1 *h1, const TH1 *h2, Double_t c1=1, Double_t c2=1);
// *MENU*
void Divide(const TH1 *h1);
void Divide(const TH1 *h1, const TH1 *h2, Double_t c1=1, Double_t
c2=1, Option_t *option=""); // *MENU*
void Multiply(const TH1 *h1);
void Multiply(const TH1 *h1, const TH1 *h2, Double_t c1=1, Double_t
c2=1, Option_t *option=""); // *MENU*
TH2D *ProjectionXY(const char *name="_pxy", Option_t *option="e")
const;
Rene Brun
On Mon, 18 Feb 2002, Thomas Bretz wrote:
> Dear Developers,
>
> is there a reason, that...
>
> - the following functions are not declared as const?
> TH3::Project3D();
> TH2::ProjectionX();
> TH2::ProjectionY();
>
> - the following functions doesn't accapt const pointers?
> TH1::Add();
> and similar...
>
> Best regards,
> Thomas.
>
This archive was generated by hypermail 2b29 : Sat Jan 04 2003 - 23:50:42 MET