CMS 3D CMS Logo

PixelTopologyMap.cc
Go to the documentation of this file.
2 
3 void PixelTopologyMap::printAll(std::ostream& os) const {
4  for (unsigned int i = 1; i <= m_pxbMap.size(); i++) {
5  os << "PXB layer " << std::setw(2) << i << " has: " << std::setw(2) << getPXBLadders(i) << " ladders and "
6  << std::setw(2) << getPXBModules(i) << " modules" << std::endl;
7  }
8 
9  for (unsigned int j = 1; j <= m_pxfMap.size(); j++) {
10  os << "PXF disk " << std::setw(2) << j << " has: " << std::setw(2) << getPXFBlades(j) << " blades and "
11  << std::setw(2) << getPXFModules(j) << " modules" << std::endl;
12  }
13 }
14 
16  // build barrel
18  std::vector<unsigned> maxLadder, maxModule;
19  maxLadder.resize(nlay);
20  maxModule.resize(nlay);
21  for (unsigned int i = 1; i <= nlay; i++) {
22  maxLadder.push_back(0);
23  maxModule.push_back(0);
24  }
25 
26  for (auto det : m_trackerGeom->detsPXB()) {
27  const PixelGeomDetUnit* pixelDet = dynamic_cast<const PixelGeomDetUnit*>(det);
28 
29  const auto& layer = m_trackerTopo->pxbLayer(pixelDet->geographicalId());
30  const auto& ladder = m_trackerTopo->pxbLadder(pixelDet->geographicalId());
31  const auto& module = m_trackerTopo->pxbModule(pixelDet->geographicalId());
32 
33  if (ladder > maxLadder[layer]) {
34  maxLadder[layer] = ladder;
35  }
36 
37  if (module > maxModule[layer]) {
38  maxModule[layer] = module;
39  }
40  }
41 
42  for (unsigned int i = 1; i <= nlay; i++) {
43  m_pxbMap[i] = std::make_pair(maxLadder[i], maxModule[i]);
44  }
45 
46  // build endcaps
48  std::vector<unsigned> maxBlade, maxPXFModule;
49  maxBlade.resize(ndisk);
50  maxPXFModule.resize(ndisk);
51  for (unsigned int i = 1; i <= ndisk; i++) {
52  maxBlade.push_back(0);
53  maxPXFModule.push_back(0);
54  }
55 
56  for (auto det : m_trackerGeom->detsPXF()) {
57  const PixelGeomDetUnit* pixelDet = dynamic_cast<const PixelGeomDetUnit*>(det);
58 
59  const auto& disk = m_trackerTopo->pxfDisk(pixelDet->geographicalId());
60  const auto& blade = m_trackerTopo->pxfBlade(pixelDet->geographicalId());
61  const auto& pxf_module = m_trackerTopo->pxfModule(pixelDet->geographicalId());
62 
63  if (blade > maxBlade[disk]) {
64  maxBlade[disk] = blade;
65  }
66 
67  if (pxf_module > maxPXFModule[disk]) {
68  maxPXFModule[disk] = pxf_module;
69  }
70  }
71 
72  for (unsigned int i = 1; i <= ndisk; i++) {
73  m_pxfMap[i] = std::make_pair(maxBlade[i], maxPXFModule[i]);
74  }
75 }
PixelTopologyMap.h
mps_fire.i
i
Definition: mps_fire.py:428
PixelSubdetector::PixelEndcap
Definition: PixelSubdetector.h:11
PixelSubdetector::PixelBarrel
Definition: PixelSubdetector.h:11
TrackerTopology::pxbLadder
unsigned int pxbLadder(const DetId &id) const
Definition: TrackerTopology.h:155
PixelTopologyMap::buildTopologyMaps
void buildTopologyMaps()
Definition: PixelTopologyMap.cc:15
PixelTopologyMap::m_trackerTopo
const TrackerTopology * m_trackerTopo
Definition: PixelTopologyMap.h:43
TrackerGeometry::numberOfLayers
unsigned int numberOfLayers(int subdet) const
Definition: TrackerGeometry.cc:211
TrackerTopology::pxbLayer
unsigned int pxbLayer(const DetId &id) const
Definition: TrackerTopology.h:144
PixelTopologyMap::m_pxfMap
std::map< unsigned, std::pair< unsigned, unsigned > > m_pxfMap
Definition: PixelTopologyMap.h:47
TrackerGeometry::detsPXB
const DetContainer & detsPXB() const
Definition: TrackerGeometry.cc:171
PixelTopologyMap::m_pxbMap
std::map< unsigned, std::pair< unsigned, unsigned > > m_pxbMap
Definition: PixelTopologyMap.h:46
PixelGeomDetUnit
Definition: PixelGeomDetUnit.h:15
TrackerGeometry::detsPXF
const DetContainer & detsPXF() const
Definition: TrackerGeometry.cc:173
phase1PixelTopology::layer
constexpr std::array< uint8_t, layerIndexSize > layer
Definition: phase1PixelTopology.h:99
PixelTopologyMap::getPXBLadders
const unsigned getPXBLadders(unsigned int lay) const
Definition: PixelTopologyMap.h:32
GeomDet::geographicalId
DetId geographicalId() const
The label of this GeomDet.
Definition: GeomDet.h:64
PixelTopologyMap::getPXFBlades
const unsigned getPXFBlades(int disk) const
Definition: PixelTopologyMap.h:34
TrackerTopology::pxfModule
unsigned int pxfModule(const DetId &id) const
Definition: TrackerTopology.h:163
TrackerTopology::pxfDisk
unsigned int pxfDisk(const DetId &id) const
Definition: TrackerTopology.h:446
PixelTopologyMap::m_trackerGeom
const TrackerGeometry * m_trackerGeom
Definition: PixelTopologyMap.h:44
TrackerTopology::pxbModule
unsigned int pxbModule(const DetId &id) const
Definition: TrackerTopology.h:160
PixelTopologyMap::getPXFModules
const unsigned getPXFModules(int disk) const
Definition: PixelTopologyMap.h:35
PixelTopologyMap::printAll
void printAll(std::ostream &os) const
Definition: PixelTopologyMap.cc:3
PixelTopologyMap::getPXBModules
const unsigned getPXBModules(unsigned int lay) const
Definition: PixelTopologyMap.h:33
PVValHelper::ladder
Definition: PVValidationHelpers.h:73
TrackerTopology::pxfBlade
unsigned int pxfBlade(const DetId &id) const
Definition: TrackerTopology.h:447
dqmiolumiharvest.j
j
Definition: dqmiolumiharvest.py:66