19#include "BDSBH4DBase.hh"
21#include "BDSException.hh"
29BDSBH4DBase::BDSBH4DBase():
41BDSBH4DBase::BDSBH4DBase(
unsigned int nXBinsIn,
unsigned int nYBinsIn,
42 unsigned int nZBinsIn,
unsigned int nEBinsIn,
43 double xMinIn,
double xMaxIn,
double yMinIn,
double yMaxIn,
44 double zMinIn,
double zMaxIn,
double eMinIn,
double eMaxIn,
45 const std::string& nameIn,
46 const std::string& titleIn,
47 const std::string& escaleIn):
48 h_nxbins(nXBinsIn), h_nybins(nYBinsIn), h_nzbins(nZBinsIn), h_nebins(nEBinsIn),
49 h_xmin(xMinIn), h_xmax(xMaxIn),
50 h_ymin(yMinIn), h_ymax(yMaxIn),
51 h_zmin(zMinIn), h_zmax(zMaxIn),
52 h_emin(eMinIn), h_emax(eMaxIn),
59BDSBH4DBase::BDSBH4DBase(
unsigned int nXBinsIn,
unsigned int nYBinsIn,
unsigned int nZBinsIn,
60 double xMinIn,
double xMaxIn,
61 double yMinIn,
double yMaxIn,
62 double zMinIn,
double zMaxIn,
63 const std::string& nameIn,
64 const std::string& titleIn,
65 const std::string& escaleIn,
66 const std::vector<double>& eBinEdgesIn):
67 h_nxbins(nXBinsIn), h_nybins(nYBinsIn), h_nzbins(nZBinsIn),
68 h_xmin(xMinIn), h_xmax(xMaxIn),
69 h_ymin(yMinIn), h_ymax(yMaxIn),
70 h_zmin(zMinIn), h_zmax(zMaxIn),
74 h_ebinsedges(eBinEdgesIn),
77 if (eBinEdgesIn.size() < 2)
78 {
throw BDSException(__METHOD_NAME__,
"bin edges vector must be at least 2 numbers");}
79 h_nebins = (
unsigned int)(eBinEdgesIn.size() - 1);
80 h_emin = eBinEdgesIn[0];
81 h_emax = eBinEdgesIn.back();
84int BDSBH4DBase::GetNbinsX()
const
86 return static_cast<int>(h_nxbins);
89int BDSBH4DBase::GetNbinsY()
const
91 return static_cast<int>(h_nybins);
94int BDSBH4DBase::GetNbinsZ()
const
96 return static_cast<int>(h_nzbins);
99int BDSBH4DBase::GetNbinsE()
const
101 return static_cast<int>(h_nebins);
104const char* BDSBH4DBase::GetName()
const
106 return h_name.c_str();
109const char* BDSBH4DBase::GetTitle()
const
111 return h_title.c_str();
114unsigned long BDSBH4DBase::GetEntries_BDSBH4D()
119void BDSBH4DBase::SetName(
const char* name)
121 h_name = std::string(name);
124void BDSBH4DBase::SetTitle(
const char* title)
126 h_title = std::string(title);
129void BDSBH4DBase::SetEntries_BDSBH4D(
double i)
131 h_entries =
static_cast<unsigned long>(i);
Base class for the 4D histogram classes.
General exception with possible name of object and message.