39 etadivisions_(pset.getUntrackedParameter<unsigned
int>(
"EtaDivisions", 10)),
40 phidivisions_(pset.getUntrackedParameter<unsigned
int>(
"PhiDivisions", 10)),
41 etamax_(pset.getUntrackedParameter<double>(
"EtaMax", 2.4))
65 etadivisions_ * phidivisions_,
71 for (
const auto& idet : detcabling.getDetCabling()) {
76 auto geom_det = tkgeom.idToDetUnit(
DetId(idet.first));
83 double eta = tkgeom.idToDet(
DetId(idet.first))->position().eta();
84 double phi = tkgeom.idToDet(
DetId(idet.first))->position().phi().value();
91 uint32_t layer = tTopo.layer(idet.first);
94 const std::vector<const FedChannelConnection*>& conns = idet.second;
98 auto&
elem = regioncabling[reg][subdet][layer].back();
99 elem.first = idet.first;
100 elem.second.resize(conns.size());
101 for (
const auto& iconn : conns) {
102 if ((iconn !=
nullptr) && (iconn->apvPairNumber() < conns.size())) {
103 elem.second[iconn->apvPairNumber()] = *iconn;
109 RegionConnections->setRegionCabling(regioncabling);
111 return RegionConnections;
edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecord > tkgeomToken_
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
SiStripRegionConnectivity(const edm::ParameterSet &)
SiStripRegionConnectivity
std::pair< uint32_t, std::vector< FedChannelConnection > > Element
static const uint32_t invalid32_
std::vector< Element > ElementCabling
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const
static const SubDet subdetFromDetId(const uint32_t detid)
std::vector< RegionCabling > Cabling
edm::ESGetToken< SiStripDetCabling, SiStripDetCablingRcd > detcablingToken_
def elem(elemtype, innerHTML='', html_class='', kwargs)
#define DEFINE_FWK_EVENTSETUP_MODULE(type)
std::pair< double, double > Position
edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > tTopoToken_
std::vector< WedgeCabling > RegionCabling
std::unique_ptr< SiStripRegionCabling > produceRegionCabling(const SiStripRegionCablingRcd &)
std::vector< ElementCabling > WedgeCabling
~SiStripRegionConnectivity() override