![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
Go to the documentation of this file.
22 #define FLEXHIST() ((reinterpret_cast<Flex1DHisto<double>*>(m_flexHisto)))
23 #define CALL(x,y) m_rootHisto ? m_rootHisto-> x : reinterpret_cast<Flex1DHisto<double>*>(m_flexHisto)-> y
24 #ifdef LW_DEBUG_HEAVY_USERS
25 #define LWCOUNTCALL {if (m_flexHisto) FLEXHIST()->countCall(LWHistTraceUtils::getAdresses());};
26 #define LWREPORT {if (m_flexHisto) FLEXHIST()->produceReport(GetName());};
28 #define LWCOUNTCALL {};
34 unsigned nbinsx,
const double& xlow,
const double& xup )
42 h->m_nBytesFromPool =
sizeof(
TH1D_LW);
56 h->m_nBytesFromPool =
sizeof(
TH1D_LW);
70 h->m_nBytesFromPool =
sizeof(
TH1D_LW);
84 m_rootbackend_fastloopbin(0),
85 m_ownsRootSumw2(false)
96 unsigned nbins,
const double*
xbins,
bool rootbackend )
100 m_rootbackend_fastloopbin(0),
101 m_ownsRootSumw2(false)
112 unsigned nbins,
const float*
xbins,
bool rootbackend )
116 m_rootbackend_fastloopbin(0),
117 m_ownsRootSumw2(false)
204 std::cout<<
"TH1D_LW Warning: SetBins(..) called on non-empty histogram."
205 <<
" Bin contents lost/reshuffled! (histogram name: \""<<
GetName()<<
"\")"<<std::endl;
220 return std::as_const(*
FLEXHIST()).getVarBins();
235 return std::as_const(*m_rootHisto).GetXaxis()->GetXmin();
242 return std::as_const(*m_rootHisto).GetXaxis()->GetXmax();
272 return static_cast<unsigned>(
m_rootHisto->GetEntries());
280 double& sumWX,
double& sumWX2 )
const
293 void TH1D_LW::setSums(
const double& sumW,
const double&sumW2,
const double& sumWX,
const double& sumWX2 )
301 FLEXHIST()->setSums(sumW,sumW2,sumWX,sumWX2);
375 double sumW, sumW2, sumWX, sumWX2;
376 getSums(sumW, sumW2, sumWX, sumWX2);
377 setSums(fact*sumW, sumW2*fact*fact, sumWX*fact, sumWX2*fact);
380 FLEXHIST()->scaleContentsAndErrors(fact);
virtual double actualGetBinCenterX(int bin) const override
virtual unsigned GetEntries() const override
void scaleContentsAndErrors(THX *, const double &fact)
static TH1D_LW * create(const char *name, const char *title, unsigned nbinsx, const double &xlow, const double &xup)
unsigned m_rootbackend_fastloopbin
virtual void SetBinContent(unsigned bin, const double &) override
const float * getVarBins() const
virtual double Integral() const override
bool ownsROOTHisto() const
virtual unsigned actualFindBinX(const double &) const override
virtual const TH1 * getROOTHistBaseNoAlloc() const override
virtual void SetEntries(unsigned) override
virtual void scaleContentsAndErrors(const double &fact) override
double GetBinContent(int) const
bool usingROOTBackend() const
virtual void GetBinContentAndError(unsigned bin, double &content, double &error) const override
virtual bool getNextActiveBin(unsigned &bin, double &content, double &error) override
virtual TH1 * getROOTHistBase() override
virtual void setSums(const double &sumW, const double &sumW2, const double &sumWX, const double &sumWX2) override
const char * GetName() const
virtual unsigned GetNbinsX() const override
virtual double getXMax() const override
static bool hasROOTBackend()
static void destroy(Flex1DHisto *)
virtual void getSums(double &sumW, double &sumW2, double &sumWX, double &sumWX2) const override
virtual void SetBinContentAndError(unsigned bin, const double &content, const double &error) override
virtual double GetBinError(unsigned bin) const override
virtual void clearKeptROOTHist() override
static bool cleanupOnGetROOT()
void SetBinContent(int, double)
virtual double GetBinContent(unsigned bin) const override
void deleteRootHisto(THX *rootHist, bool &sumW2IsFromPools)
virtual void SetBins(unsigned nbins, double xmin, double xmax) override
virtual void clear() override
static Flex1DHisto * create(unsigned nbins, const double &xmin, const double &xmax)
virtual void Fill(const double &x) override
virtual void SetBinError(unsigned bin, const double &) override
virtual void Reset() override
virtual double getXMin() const override
TH1D_LW(const char *name, const char *title, unsigned nbinsx, const double &xlow, const double &xup, bool rootbackend)
virtual bool apply(TH1 *) const
virtual void resetActiveBinLoop() override