17 : setup_(
setup), numDTCsPerRegion_(
setup->numDTCsPerRegion()) {
19 for (
int dtcInRegion = 0; dtcInRegion <
setup->numDTCsPerRegion(); dtcInRegion++) {
20 set<int> encodingLayerId;
22 const int dtcId = dtcInRegion +
region *
setup->numDTCsPerRegion();
23 const vector<SensorModule*>&
modules =
setup->dtcModules(dtcId);
25 encodingLayerId.insert(sm->layerId());
28 if ((
int)encodingLayerId.size() >
setup->hybridNumLayers()) {
30 exception <<
"Cabling map connects more than " <<
setup->hybridNumLayers() <<
" layers to a DTC.";
31 exception.addContext(
"trackerDTC::LayerEncoding::LayerEncoding");
41 const auto pos =
find(encoding.begin(), encoding.end(), sm->
layerId());
std::vector< std::vector< int > > encodingsLayerId_
Class to process and provide run-time constants used by Track Trigger emulators.
int numDTCsPerRegion() const
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
int decode(tt::SensorModule *sm) const