utility class to assign dense readout cell indexing More...
#include <HGCalMappingCellIndexer.h>
Public Member Functions | |
uint32_t | denseIndex (std::string typecode, uint32_t chip, uint32_t half, uint32_t seq) const |
builders for the dense index More... | |
uint32_t | denseIndex (std::string typecode, uint32_t erx, uint32_t seq) const |
uint32_t | denseIndex (size_t idx, uint32_t chip, uint32_t half, uint32_t seq) const |
uint32_t | denseIndex (size_t idx, uint32_t erx, uint32_t seq) const |
uint32_t | elecIdFromIndex (uint32_t rtn, std::string typecode) const |
decodes the dense index code More... | |
uint32_t | elecIdFromIndex (uint32_t rtn, size_t idx) const |
HGCalDenseIndexerBase | getDenseIndexerFor (size_t idx) const |
returns the dense indexer for a given internal index More... | |
HGCalDenseIndexerBase | getDenseIndexFor (std::string typecode) const |
returns the dense indexer for a typecode More... | |
size_t | getEnumFromTypecode (std::string typecode) const |
gets index given typecode string More... | |
size_t | getNErxExpectedFor (std::string typecode) const |
gets the number of e-Rx for a given typecode More... | |
size_t | getNErxExpectedFor (size_t typecodeidx) const |
size_t | getNWordsExpectedFor (std::string typecode) const |
gets the number of words for a given typecode More... | |
size_t | getNWordsExpectedFor (size_t typecodeidx) const |
std::string | getTypecodeFromEnum (size_t idx) const |
checks if there is a typecode corresponding to an index More... | |
HGCalMappingCellIndexer ()=default | |
uint32_t | maxDenseIndex () const |
returns the max. dense index expected More... | |
void | processNewCell (std::string typecode, uint16_t chip, uint16_t half) |
void | update () |
process the current list of type codes handled and updates the dense indexers More... | |
~HGCalMappingCellIndexer () | |
Public Attributes | |
std::vector< HGCalDenseIndexerBase > | di_ |
std::vector< uint16_t > | maxErx_ |
std::vector< uint32_t > | offsets_ |
std::map< std::string, size_t > | typeCodeIndexer_ |
Static Public Attributes | |
static constexpr uint16_t | maxChPerErx_ = 37 |
static constexpr char | maxHalfPerROC_ = 2 |
Private Member Functions | |
template<class Archive > | |
void | serialize (Archive &ar, const unsigned int version) |
Friends | |
class | boost::serialization::access |
template<typename CondSerializationT , typename Enabled > | |
struct | cond::serialization::access |
utility class to assign dense readout cell indexing
Definition at line 15 of file HGCalMappingCellIndexer.h.
|
default |
|
inline |
Definition at line 159 of file HGCalMappingCellIndexer.h.
|
inline |
builders for the dense index
Definition at line 94 of file HGCalMappingCellIndexer.h.
References getEnumFromTypecode(), and cmsswSequenceInfo::seq.
Referenced by denseIndex(), and ALPAKA_ACCELERATOR_NAMESPACE::hgcal::HGCalMappingCellESProducer::produce().
|
inline |
Definition at line 97 of file HGCalMappingCellIndexer.h.
References denseIndex(), getEnumFromTypecode(), and cmsswSequenceInfo::seq.
|
inline |
Definition at line 100 of file HGCalMappingCellIndexer.h.
References denseIndex(), heavyIonCSV_trainingSettings::idx, maxHalfPerROC_, and cmsswSequenceInfo::seq.
|
inline |
Definition at line 104 of file HGCalMappingCellIndexer.h.
References di_, heavyIonCSV_trainingSettings::idx, offsets_, and cmsswSequenceInfo::seq.
|
inline |
decodes the dense index code
Definition at line 111 of file HGCalMappingCellIndexer.h.
References getEnumFromTypecode().
|
inline |
Definition at line 114 of file HGCalMappingCellIndexer.h.
References di_, heavyIonCSV_trainingSettings::idx, offsets_, and HGCalElectronicsId::raw().
|
inline |
returns the dense indexer for a given internal index
Definition at line 84 of file HGCalMappingCellIndexer.h.
References di_, and heavyIonCSV_trainingSettings::idx.
Referenced by getDenseIndexFor().
|
inline |
returns the dense indexer for a typecode
Definition at line 77 of file HGCalMappingCellIndexer.h.
References getDenseIndexerFor(), and getEnumFromTypecode().
|
inline |
gets index given typecode string
Definition at line 57 of file HGCalMappingCellIndexer.h.
References ALPAKA_ACCELERATOR_NAMESPACE::vertexFinder::it, and typeCodeIndexer_.
Referenced by denseIndex(), elecIdFromIndex(), getDenseIndexFor(), getNErxExpectedFor(), getNWordsExpectedFor(), HGCalMappingESProducer::prepareModuleMapperIndexer(), and ALPAKA_ACCELERATOR_NAMESPACE::hgcal::HGCalMappingCellESProducer::produce().
|
inline |
gets the number of e-Rx for a given typecode
Definition at line 145 of file HGCalMappingCellIndexer.h.
References getEnumFromTypecode(), and ALPAKA_ACCELERATOR_NAMESPACE::vertexFinder::it.
Referenced by HGCalMappingESProducer::prepareModuleMapperIndexer().
|
inline |
Definition at line 149 of file HGCalMappingCellIndexer.h.
References maxErx_.
|
inline |
gets the number of words for a given typecode
Definition at line 136 of file HGCalMappingCellIndexer.h.
References getEnumFromTypecode(), and ALPAKA_ACCELERATOR_NAMESPACE::vertexFinder::it.
Referenced by HGCalMappingESProducer::prepareModuleMapperIndexer().
|
inline |
Definition at line 140 of file HGCalMappingCellIndexer.h.
References maxChPerErx_, and maxErx_.
|
inline |
checks if there is a typecode corresponding to an index
Definition at line 67 of file HGCalMappingCellIndexer.h.
References Exception, heavyIonCSV_trainingSettings::idx, ALPAKA_ACCELERATOR_NAMESPACE::vertexFinder::it, and typeCodeIndexer_.
|
inline |
returns the max. dense index expected
Definition at line 126 of file HGCalMappingCellIndexer.h.
References mps_fire::i, maxChPerErx_, maxErx_, and offsets_.
Referenced by ALPAKA_ACCELERATOR_NAMESPACE::hgcal::HGCalMappingCellESProducer::produce().
|
inline |
adds to map of type codes (= module types) to handle and updatest the max. number of eRx
Definition at line 24 of file HGCalMappingCellIndexer.h.
References heavyIonCSV_trainingSettings::idx, WZElectronSkims53X_cff::max, maxErx_, and typeCodeIndexer_.
Referenced by HGCalMappingESProducer::prepareCellMapperIndexer().
|
private |
|
inline |
process the current list of type codes handled and updates the dense indexers
Definition at line 39 of file HGCalMappingCellIndexer.h.
References di_, heavyIonCSV_trainingSettings::idx, maxChPerErx_, maxErx_, create_idmaps::n, offsets_, and typeCodeIndexer_.
Referenced by progressbar.ProgressBar::__next__(), MatrixUtil.Matrix::__setitem__(), MatrixUtil.Steps::__setitem__(), dqm-mbProfile.Profile::finish(), progressbar.ProgressBar::finish(), MatrixUtil.Steps::overwrite(), and HGCalMappingESProducer::prepareCellMapperIndexer().
|
friend |
Definition at line 161 of file HGCalMappingCellIndexer.h.
|
friend |
Definition at line 161 of file HGCalMappingCellIndexer.h.
std::vector<HGCalDenseIndexerBase> HGCalMappingCellIndexer::di_ |
Definition at line 157 of file HGCalMappingCellIndexer.h.
Referenced by denseIndex(), elecIdFromIndex(), getDenseIndexerFor(), and update().
|
static |
Definition at line 152 of file HGCalMappingCellIndexer.h.
Referenced by HGCalMappingModuleIndexer::getIndexForModuleData(), getNWordsExpectedFor(), maxDenseIndex(), and update().
std::vector<uint16_t> HGCalMappingCellIndexer::maxErx_ |
Definition at line 155 of file HGCalMappingCellIndexer.h.
Referenced by getNErxExpectedFor(), getNWordsExpectedFor(), maxDenseIndex(), processNewCell(), and update().
|
static |
Definition at line 151 of file HGCalMappingCellIndexer.h.
Referenced by denseIndex().
std::vector<uint32_t> HGCalMappingCellIndexer::offsets_ |
Definition at line 156 of file HGCalMappingCellIndexer.h.
Referenced by denseIndex(), elecIdFromIndex(), maxDenseIndex(), and update().
std::map<std::string, size_t> HGCalMappingCellIndexer::typeCodeIndexer_ |
Definition at line 154 of file HGCalMappingCellIndexer.h.
Referenced by getEnumFromTypecode(), getTypecodeFromEnum(), processNewCell(), and update().