CMS 3D CMS Logo

TrackerAlignableId.cc
Go to the documentation of this file.
1 
8 
12 
14 
15 //__________________________________________________________________________________________________
16 // Returns alignable object id and layer (or wheel, or disk) number from a DetId
17 std::pair<int, int> TrackerAlignableId::typeAndLayerFromDetId(const DetId& detId, const TrackerTopology* tTopo) const {
18  int layerNumber = 0;
19 
20  unsigned int subdetId = static_cast<unsigned int>(detId.subdetId());
21 
22  if (subdetId == StripSubdetector::TIB) {
23  layerNumber = tTopo->tibLayer(detId.rawId());
24  } else if (subdetId == StripSubdetector::TOB) {
25  layerNumber = tTopo->tobLayer(detId.rawId());
26  } else if (subdetId == StripSubdetector::TID) {
27  layerNumber = tTopo->tidWheel(detId.rawId());
28  } else if (subdetId == StripSubdetector::TEC) {
29  layerNumber = tTopo->tecWheel(detId.rawId());
30  } else if (subdetId == PixelSubdetector::PixelBarrel) {
31  layerNumber = tTopo->pxbLayer(detId.rawId());
32  } else if (subdetId == PixelSubdetector::PixelEndcap) {
33  layerNumber = tTopo->pxfDisk(detId.rawId());
34  } else
35  edm::LogWarning("LogicError") << "Unknown subdetid: " << subdetId;
36 
37  return std::make_pair(subdetId, layerNumber);
38 }
PixelSubdetector.h
MessageLogger.h
PixelSubdetector::PixelEndcap
Definition: PixelSubdetector.h:11
PixelSubdetector::PixelBarrel
Definition: PixelSubdetector.h:11
TrackerTopology
Definition: TrackerTopology.h:16
edm::LogWarning
Log< level::Warning, false > LogWarning
Definition: MessageLogger.h:122
TrackerTopology::tidWheel
unsigned int tidWheel(const DetId &id) const
Definition: TrackerTopology.h:201
TrackerTopology::pxbLayer
unsigned int pxbLayer(const DetId &id) const
Definition: TrackerTopology.h:144
DetId
Definition: DetId.h:17
TrackerTopology.h
StripSubdetector::TIB
static constexpr auto TIB
Definition: StripSubdetector.h:16
DetId::subdetId
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum)
Definition: DetId.h:48
TrackerAlignableId::typeAndLayerFromDetId
std::pair< int, int > typeAndLayerFromDetId(const DetId &detId, const TrackerTopology *tTopo) const
Definition: TrackerAlignableId.cc:17
TrackerTopology::pxfDisk
unsigned int pxfDisk(const DetId &id) const
Definition: TrackerTopology.h:446
TrackerTopology::tobLayer
unsigned int tobLayer(const DetId &id) const
Definition: TrackerTopology.h:147
DetId::rawId
constexpr uint32_t rawId() const
get the raw id
Definition: DetId.h:57
StripSubdetector::TEC
static constexpr auto TEC
Definition: StripSubdetector.h:19
StripSubdetector::TOB
static constexpr auto TOB
Definition: StripSubdetector.h:18
TrackerTopology::tecWheel
unsigned int tecWheel(const DetId &id) const
Definition: TrackerTopology.h:198
StripSubdetector.h
StripSubdetector::TID
static constexpr auto TID
Definition: StripSubdetector.h:17
TrackerTopology::tibLayer
unsigned int tibLayer(const DetId &id) const
Definition: TrackerTopology.h:150
TrackerAlignableId.h