CMS 3D CMS Logo

HitInfo.cc
Go to the documentation of this file.
2 
5 
8 
9 #include <sstream>
10 using namespace std;
11 
12 /*****************************************************************************/
14 
15 /*****************************************************************************/
17 
18 /*****************************************************************************/
19 string HitInfo::getInfo(const DetId &id, const TrackerTopology *tTopo) {
20  string info;
21 
22  if (id.subdetId() == int(PixelSubdetector::PixelBarrel)) {
23  // 0 + (layer-1)<<1 + (ladder-1)%2 : 0-5
24 
25  ostringstream o;
26  o << " (" << tTopo->pxbLayer(id) << "|" << tTopo->pxbLadder(id) << "|" << tTopo->pxbModule(id) << ")";
27  info += o.str();
28  } else {
29  // 6 + (disk-1)<<1 + (panel-1)%2
30 
31  ostringstream o;
32  o << " (" << tTopo->pxfSide(id) << "|" << tTopo->pxfDisk(id) << "|" << tTopo->pxfBlade(id) << "|"
33  << tTopo->pxfPanel(id) << "|" << tTopo->pxfModule(id) << ")";
34  info += o.str();
35  }
36 
37  return info;
38 }
39 
40 /*****************************************************************************/
41 string HitInfo::getInfo(const TrackingRecHit &recHit, const TrackerTopology *tTopo) {
42  DetId id(recHit.geographicalId());
43 
44  return getInfo(id, tTopo);
45 }
46 
47 /*****************************************************************************/
48 string HitInfo::getInfo(const vector<const TrackingRecHit *> &recHits, const TrackerTopology *tTopo) {
49  string info;
50 
51  for (vector<const TrackingRecHit *>::const_iterator recHit = recHits.begin(); recHit != recHits.end(); recHit++)
52  info += getInfo(**recHit, tTopo);
53 
54  return info;
55 }
56 
57 /*****************************************************************************/
58 string HitInfo::getInfo(const PSimHit &simHit, const TrackerTopology *tTopo) {
59  string info;
60 
61  DetId id = DetId(simHit.detUnitId());
62 
63  {
64  ostringstream o;
65  o << simHit.particleType();
66 
67  info += " | pid=" + o.str();
68  }
69 
70  {
71  ostringstream o;
72  o << id.subdetId();
73 
74  info += " | " + o.str();
75  }
76 
77  return info + getInfo(id, tTopo);
78 }
unsigned int pxbLayer(const DetId &id) const
static const TGPicture * info(bool iBackgroundIsBlack)
~HitInfo()
Definition: HitInfo.cc:16
unsigned int pxfBlade(const DetId &id) const
unsigned int pxfModule(const DetId &id) const
HitInfo()=default
Definition: HitInfo.cc:13
unsigned int pxbLadder(const DetId &id) const
static std::string getInfo(const DetId &id, const TrackerTopology *tTopo)
Definition: HitInfo.cc:19
unsigned int pxfDisk(const DetId &id) const
unsigned int pxfPanel(const DetId &id) const
Definition: DetId.h:17
unsigned int pxfSide(const DetId &id) const
unsigned int pxbModule(const DetId &id) const