18 #include <JANA/jerror.h>
28 inline float Fill(
float x,
float weight=1.0);
29 inline int FindBin(
float x)
const;
44 inline TH1D*
MakeTH1D(
string name,
string title)
const;
46 inline void Reset(
void);
47 inline void Scale(
float scale);
82 if(Nbins>0 && Nbins<100000000){
85 for(
int bin=1; bin<=
Nbins; bin++){
115 _DBG_<<
"Histogram parameters don't match!!"<<endl;
119 for(
int bin=1; bin<=
Nbins; bin++){
139 for(
int bin=start_bin; bin<=
Nbins; bin++){
140 if(
content[bin] >= val)
return bin;
151 for(
int bin=1; bin<=
Nbins; bin++){
152 if(
content[bin] != 0.0)
return bin;
163 for(
int bin=
Nbins; bin>=1; bin--){
164 if(
content[bin] != 0.0)
return bin;
176 if(bin<1 || bin>
Nbins)
return 0.0;
204 if(bin<1 || bin>
Nbins)
return 0.0;
214 if(bin<1 || bin>
Nbins)
return 0.0;
270 for(
int bin=1; bin<=
Nbins; bin++) h->SetBinContent(bin,
content[bin]);
296 if(bin<1 || bin>
Nbins)
return;
329 for(
int bin=0; bin<=
Nbins; bin++){
338 #endif // _DHistogram_
TH1D * MakeTH1D(string name, string title) const
int FindLastNonZeroBin(void) const
float GetLowEdge(void) const
float * GetContentPointer(void) const
CAUTION!
float GetHighEdge(void) const
void SetBinContent(int bin, float val)
float GetBinContent(int bin) const
float GetBinWidth(void) const
DHistogram & operator=(const DHistogram &hsrc)
int FindFirstBinAbove(float val, int start_bin=1) const
float Fill(float x, float weight=1.0)
int FindBin(float x) const
void Add(const DHistogram *h)
float Integral(void) const
float GetBinLowEdge(int bin) const
float GetBinCenter(int bin) const
int FindFirstNonZeroBin(void) const