13#include <GaudiKernel/StatusCode.h>
22 const std::vector<Gaudi::Details::PropertyBase*> props = this->getProperties();
23 for( Gaudi::Details::PropertyBase* prop : props ) {
24 if (prop->ownerTypeName()==this->type()) {
25 ATH_MSG_DEBUG(
"Property:\t" << prop->name() <<
"\t : \t" << prop->toString());
29 return StatusCode::SUCCESS;
48 return StatusCode::FAILURE;
53 ATH_MSG_FATAL(
"Every dimension must be at least one bin (set #bins=1 for not binning in that parameter)");
57 ATH_MSG_FATAL(
"Number of bins can only increase with each step");
58 return StatusCode::FAILURE;
61 ATH_MSG_FATAL(
"Number of bins must be integer multiple of bins in previous step");
62 return StatusCode::FAILURE;
78 return StatusCode::SUCCESS;
106 retv[i] =
binIdx(i, pars[i]);
Binning Classes for BinStep.
Defines Parameters used for binning.
double binCenter(unsigned par, unsigned bin) const
const FPGATrackSimBinArray< int > & validBinsLocal() const
FPGATrackSimBinStep(const std::string &algname, const std::string &name, const IInterface *ifc)
FPGATrackSimBinArray< int > m_validBinLocal
Gaudi::Property< std::vector< unsigned > > m_parBinsConfig
unsigned binIdx(unsigned par, double val) const
FPGATrackSimBinUtil::ParSet m_parMin
FPGATrackSimBinArray< int > m_validBinFull
FPGATrackSimBinUtil::IdxSet convertToPrev(const FPGATrackSimBinUtil::IdxSet &cur) const
FPGATrackSimBinStep * m_prev
std::vector< unsigned > m_pars
void setValidBin(const std::vector< unsigned > &idx)
void printValidBin() const
FPGATrackSimBinUtil::ParSet m_parMax
virtual StatusCode initialize() override
FPGATrackSimBinUtil::ParSet m_parStep
double binLowEdge(unsigned par, unsigned bin) const
StatusCode setRanges(FPGATrackSimBinStep *prev, const FPGATrackSimBinUtil::ParSet &parMin, const FPGATrackSimBinUtil::ParSet &parMax)
FPGATrackSimBinUtil::IdxSet m_parBins
const std::vector< unsigned > stepIdx(FPGATrackSimBinUtil::IdxSet idx) const
const std::vector< unsigned > stepBins() const
const FPGATrackSimBinArray< int > & validBinsFull() const
std::vector< unsigned > subVec(const std::vector< unsigned > &elems, const IdxSet &invec)