CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Attributes
PixelEndcapName Class Reference

#include <PixelEndcapName.h>

Inheritance diagram for PixelEndcapName:
PixelModuleName

Public Types

enum  HalfCylinder { mO = 1, mI = 2, pO = 3, pI = 4 }
 
- Public Types inherited from PixelModuleName
enum  ModuleType {
  v1x2, v1x5, v1x8, v2x3,
  v2x4, v2x5, v2x8
}
 

Public Member Functions

int bladeName () const
 blade id More...
 
int diskName () const
 disk id More...
 
PXFDetId getDetId ()
 return DetId More...
 
DetId getDetId (const TrackerTopology *tt)
 
HalfCylinder halfCylinder () const
 
PixelModuleName::ModuleType moduleType () const override
 module Type More...
 
std::string name () const override
 from base class More...
 
bool operator== (const PixelModuleName &) const override
 check equality of modules from datamemebers More...
 
int pannelName () const
 pannel id More...
 
 PixelEndcapName (const DetId &, bool phase=false)
 ctor from DetId More...
 
 PixelEndcapName (const DetId &, const TrackerTopology *tt, bool phase=false)
 
 PixelEndcapName (HalfCylinder part=mO, int disk=0, int blade=0, int pannel=0, int plaq=0, bool phase=false)
 ctor for defined name More...
 
 PixelEndcapName (std::string name, bool phase=false)
 ctor from name string More...
 
int plaquetteName () const
 plaquetteId (in pannel) More...
 
int ringName () const
 ring Id More...
 
 ~PixelEndcapName () override
 
- Public Member Functions inherited from PixelModuleName
virtual bool isBarrel () const
 true for barrel modules More...
 
 PixelModuleName (bool isBarrel)
 
virtual ~PixelModuleName ()
 

Private Attributes

bool phase1
 
int theBlade
 
int theDisk
 
int thePannel
 
HalfCylinder thePart
 
int thePlaquette
 

Additional Inherited Members

- Static Public Member Functions inherited from PixelModuleName
static bool isBarrel (uint32_t rawDetId)
 

Detailed Description

Endcap Module name (as in PixelDatabase) for endcaps

Definition at line 16 of file PixelEndcapName.h.

Member Enumeration Documentation

Enumerator
mO 
mI 
pO 
pI 

Definition at line 18 of file PixelEndcapName.h.

Constructor & Destructor Documentation

PixelEndcapName::PixelEndcapName ( const DetId id,
bool  phase = false 
)

ctor from DetId

Definition at line 98 of file PixelEndcapName.cc.

References PXFDetId::blade(), PXFDetId::disk(), mI, mO, PXFDetId::module(), SurfaceOrientation::outer, PXFDetId::panel(), phase1, pI, pO, relativeConstraints::ring, PXFDetId::side(), theBlade, theDisk, thePannel, thePart, and thePlaquette.

Referenced by PixelEndcapName().

100  PXFDetId cmssw_numbering(id);
101  int side = cmssw_numbering.side();
102  int tmpBlade = cmssw_numbering.blade();
103  theDisk = cmssw_numbering.disk();
104  thePannel = cmssw_numbering.panel();
105  bool outer = false; // outer means with respect to the LHC ring (x - axis)
106 
107  if (phase1) { // phase1
108 
109  int ring = 0; // ring number , according to radius, 1-lower, 2- higher
110 
111  if (tmpBlade >= 7 && tmpBlade <= 17) { // ring 1, O
112  outer = true;
113  theBlade = tmpBlade - 6; //7...17-->1...11
114  ring = 1; // lower radius
115 
116  } else if (tmpBlade <= 6) { // ring 1, I
117  theBlade = 7 - tmpBlade; //1...6-->6...1
118  ring = 1;
119 
120  } else if (tmpBlade >= 18 && tmpBlade <= 22) { // ring 1, I
121  theBlade = 29 - tmpBlade; //18...22-->11...7
122  ring = 1;
123 
124  } else if (tmpBlade >= 32 && tmpBlade <= 48) { // ring 2, O
125  outer = true;
126  theBlade = tmpBlade - 31; //32...48-->28...12
127  ring = 2; // higher radius
128 
129  } else if (tmpBlade >= 23 && tmpBlade <= 31) { // ring 2, I
130  theBlade = 32 - tmpBlade; //23...31-->9...1
131  ring = 2;
132 
133  } else if (tmpBlade >= 49 && tmpBlade <= 56) { // ring 2, I
134  theBlade = 66 - tmpBlade; //49...56-->28...21
135  ring = 2;
136 
137  } // end
138 
139  thePlaquette = ring;
140 
141  } else { // phase 0
142 
143  // hack for the pilot blade
144  if (pilot_blade && theDisk == 3) { // do only for disk 3
145  if (tmpBlade >= 1 && tmpBlade <= 4) {
146  // convert the sequential counting of pilot blades to std. cmssw convention
147  if (tmpBlade < 3)
148  tmpBlade += 3;
149  else
150  tmpBlade += 13;
151  } else {
152  edm::LogError("Bad PilotBlade blade number ") << tmpBlade;
153  }
154  }
155 
156  if (tmpBlade >= 7 && tmpBlade <= 18) {
157  outer = true; // outer means with respect to the LHC ring (x - axis)
158  theBlade = tmpBlade - 6;
159  } else if (tmpBlade <= 6) {
160  theBlade = 7 - tmpBlade;
161  } else if (tmpBlade >= 19) {
162  theBlade = 31 - tmpBlade;
163  }
164 
165  thePlaquette = cmssw_numbering.module();
166 
167  } // end phase1
168 
169  if (side == 1 && outer)
170  thePart = mO;
171  else if (side == 1 && !outer)
172  thePart = mI;
173  else if (side == 2 && outer)
174  thePart = pO;
175  else if (side == 2 && !outer)
176  thePart = pI;
177 }
PixelModuleName(bool isBarrel)
HalfCylinder thePart
PixelEndcapName::PixelEndcapName ( const DetId id,
const TrackerTopology tt,
bool  phase = false 
)

Definition at line 15 of file PixelEndcapName.cc.

References mI, mO, SurfaceOrientation::outer, phase1, pI, pO, TrackerTopology::pxfBlade(), TrackerTopology::pxfDisk(), TrackerTopology::pxfModule(), TrackerTopology::pxfPanel(), TrackerTopology::pxfSide(), relativeConstraints::ring, theBlade, theDisk, thePannel, thePart, and thePlaquette.

17  //PXFDetId cmssw_numbering(id);
18  int side = tt->pxfSide(id);
19  int tmpBlade = tt->pxfBlade(id);
20  theDisk = tt->pxfDisk(id);
21  thePannel = tt->pxfPanel(id);
22  bool outer = false; // outer means with respect to the LHC ring (x - axis) Bm(p)I/O
23 
24  if (phase1) { // phase 1
25 
26  int ring = 0; // ring number , according to radius, 1-lower, 2- higher
27 
28  if (tmpBlade >= 7 && tmpBlade <= 17) { // ring 1, O
29  outer = true;
30  theBlade = tmpBlade - 6; //7...17-->1...11
31  ring = 1; // lower radius
32 
33  } else if (tmpBlade <= 6) { // ring 1, I
34  theBlade = 7 - tmpBlade; //1...6-->6...1
35  ring = 1;
36 
37  } else if (tmpBlade >= 18 && tmpBlade <= 22) { // ring 1, I
38  theBlade = 29 - tmpBlade; //18...22-->11...7
39  ring = 1;
40 
41  } else if (tmpBlade >= 32 && tmpBlade <= 48) { // ring 2, O
42  outer = true;
43  theBlade = tmpBlade - 31; //32...48-->28...12
44  ring = 2; // higher radius
45 
46  } else if (tmpBlade >= 23 && tmpBlade <= 31) { // ring 2, I
47  theBlade = 32 - tmpBlade; //23...31-->9...1
48  ring = 2;
49 
50  } else if (tmpBlade >= 49 && tmpBlade <= 56) { // ring 2, I
51  theBlade = 66 - tmpBlade; //49...56-->28...21
52  ring = 2;
53 
54  } // end
55 
57 
58  } else { // phase0
59 
60  // hack for the pilot blade
61  if (pilot_blade && theDisk == 3) { // do only for disk 3
62  //cout<<tmpBlade<<" "<<theDisk<<endl;
63  if (tmpBlade >= 1 && tmpBlade <= 4) {
64  // convert the sequential counting of pilot blades to std. cmssw convention
65  if (tmpBlade < 3)
66  tmpBlade += 3;
67  else
68  tmpBlade += 13;
69  } else {
70  edm::LogError("Bad PilotBlade blade number ") << tmpBlade;
71  }
72  }
73 
74  if (tmpBlade >= 7 && tmpBlade <= 18) {
75  outer = true;
76  theBlade = tmpBlade - 6;
77  } else if (tmpBlade <= 6) {
78  theBlade = 7 - tmpBlade;
79  } else if (tmpBlade >= 19) {
80  theBlade = 31 - tmpBlade;
81  }
82 
83  thePlaquette = tt->pxfModule(id); // ring number is coded as plaqutte (plaqs are unused)
84 
85  } // end phase1
86 
87  if (side == 1 && outer)
88  thePart = mO;
89  else if (side == 1 && !outer)
90  thePart = mI;
91  else if (side == 2 && outer)
92  thePart = pO;
93  else if (side == 2 && !outer)
94  thePart = pI;
95 }
unsigned int pxfDisk(const DetId &id) const
PixelModuleName(bool isBarrel)
HalfCylinder thePart
unsigned int pxfModule(const DetId &id) const
unsigned int pxfSide(const DetId &id) const
unsigned int pxfPanel(const DetId &id) const
unsigned int pxfBlade(const DetId &id) const
PixelEndcapName::PixelEndcapName ( HalfCylinder  part = mO,
int  disk = 0,
int  blade = 0,
int  pannel = 0,
int  plaq = 0,
bool  phase = false 
)
inline

ctor for defined name

Definition at line 25 of file PixelEndcapName.h.

References name(), hcalRecAlgoESProd_cfi::phase, PixelEndcapName(), and AlCaHLTBitMon_QueryRunRegistry::string.

26  : PixelModuleName(false),
27  thePart(part),
28  theDisk(disk),
29  theBlade(blade),
30  thePannel(pannel),
31  thePlaquette(plaq),
32  phase1(phase) {}
PixelModuleName(bool isBarrel)
HalfCylinder thePart
part
Definition: HCALResponse.h:20
PixelEndcapName::PixelEndcapName ( std::string  name,
bool  phase = false 
)

ctor from name string

Definition at line 180 of file PixelEndcapName.cc.

References mI, mO, name(), phase1, pI, pO, theBlade, theDisk, thePannel, thePart, and thePlaquette.

182  // parse the name string
183  // first, check to make sure this is an FPix name, should start with "FPix_"
184  // also check to make sure the needed parts are present
185  if ((name.substr(0, 5) != "FPix_") || (name.find("_B") == string::npos) || (name.find("_D") == string::npos) ||
186  (name.find("_BLD") == string::npos) || (name.find("_PNL") == string::npos) ||
187  ((phase1 && name.find("_RNG") == string::npos)) || ((!phase1 && name.find("_PLQ") == string::npos))) {
188  edm::LogError("BadNameString|SiPixel")
189  << "Bad name string in PixelEndcapName::PixelEndcapName(std::string): " << name;
190  return;
191  }
192 
193  // strip off ROC part if it's there
194  if (name.find("_ROC") != string::npos)
195  name = name.substr(0, name.find("_ROC"));
196 
197  // get the half cylinder
198  string hcString = name.substr(name.find("_B") + 2, name.find("_D") - name.find("_B") - 2);
199  if (hcString == "mO")
200  thePart = mO;
201  else if (hcString == "mI")
202  thePart = mI;
203  else if (hcString == "pO")
204  thePart = pO;
205  else if (hcString == "pI")
206  thePart = pI;
207  else {
208  edm::LogError("BadNameString|SiPixel")
209  << "Unable to determine half cylinder in PixelEndcapName::PixelEndcapName(std::string): " << name;
210  }
211 
212  // get the disk
213  string diskString = name.substr(name.find("_D") + 2, name.find("_BLD") - name.find("_D") - 2);
214  if (diskString == "1")
215  theDisk = 1;
216  else if (diskString == "2")
217  theDisk = 2;
218  else if (diskString == "3")
219  theDisk = 3;
220  else {
221  edm::LogError("BadNameString|SiPixel")
222  << "Unable to determine disk number in PixelEndcapName::PixelEndcapName(std::string): " << name;
223  }
224 
225  // get the blade
226  string bladeString = name.substr(name.find("_BLD") + 4, name.find("_PNL") - name.find("_BLD") - 4);
227  // since atoi() doesn't report errors, do it the long way
228  if (bladeString == "1")
229  theBlade = 1;
230  else if (bladeString == "2")
231  theBlade = 2;
232  else if (bladeString == "3")
233  theBlade = 3;
234  else if (bladeString == "4")
235  theBlade = 4;
236  else if (bladeString == "5")
237  theBlade = 5;
238  else if (bladeString == "6")
239  theBlade = 6;
240  else if (bladeString == "7")
241  theBlade = 7;
242  else if (bladeString == "8")
243  theBlade = 8;
244  else if (bladeString == "9")
245  theBlade = 9;
246  else if (bladeString == "10")
247  theBlade = 10;
248  else if (bladeString == "11")
249  theBlade = 11;
250  else if (bladeString == "12")
251  theBlade = 12;
252  else if (bladeString == "13")
253  theBlade = 13;
254  else if (bladeString == "14")
255  theBlade = 14;
256  else if (bladeString == "15")
257  theBlade = 15;
258  else if (bladeString == "16")
259  theBlade = 16;
260  else if (bladeString == "17")
261  theBlade = 17;
262  else {
263  edm::LogError("BadNameString|SiPixel")
264  << "Unable to determine blade number in PixelEndcapName::PixelEndcapName(std::string): " << name;
265  }
266 
267  // find the panel
268  string panelString;
269  if (phase1)
270  panelString = name.substr(name.find("_PNL") + 4, name.find("_RNG") - name.find("_PNL") - 4);
271  else
272  panelString = name.substr(name.find("_PNL") + 4, name.find("_PLQ") - name.find("_PNL") - 4);
273 
274  if (panelString == "1")
275  thePannel = 1;
276  else if (panelString == "2")
277  thePannel = 2;
278  else {
279  edm::LogError("BadNameString|SiPixel")
280  << "Unable to determine panel number in PixelEndcapName::PixelEndcapName(std::string): " << name;
281  }
282 
283  // find the plaquette, for phase 1 this is the rung number
284  if (phase1) { // phase1
285 
286  string ringString = name.substr(name.find("_RNG") + 4, name.size() - name.find("_RNG") - 4);
287  if (ringString == "1")
288  thePlaquette = 1; // code ring in the plaquette
289  else if (ringString == "2")
290  thePlaquette = 2;
291  else {
292  edm::LogError("BadNameString|SiPixel")
293  << "Unable to determine ring number in PixelEndcapName::PixelEndcapName(std::string): " << name;
294  }
295 
296  } else { // phase 0
297 
298  // find the plaquette
299  string plaquetteString = name.substr(name.find("_PLQ") + 4, name.size() - name.find("_PLQ") - 4);
300  if (plaquetteString == "1")
301  thePlaquette = 1;
302  else if (plaquetteString == "2")
303  thePlaquette = 2;
304  else if (plaquetteString == "3")
305  thePlaquette = 3;
306  else if (plaquetteString == "4")
307  thePlaquette = 4;
308  else {
309  edm::LogError("BadNameString|SiPixel")
310  << "Unable to determine plaquette number in PixelEndcapName::PixelEndcapName(std::string): " << name;
311  }
312 
313  } // end phase1
314 
315 } // PixelEndcapName::PixelEndcapName(std::string name)
PixelModuleName(bool isBarrel)
HalfCylinder thePart
std::string name() const override
from base class
PixelEndcapName::~PixelEndcapName ( )
inlineoverride

Definition at line 37 of file PixelEndcapName.h.

References name(), and AlCaHLTBitMon_QueryRunRegistry::string.

37 {}

Member Function Documentation

int PixelEndcapName::bladeName ( ) const
inline
int PixelEndcapName::diskName ( ) const
inline
PXFDetId PixelEndcapName::getDetId ( void  )

return DetId

Definition at line 485 of file PixelEndcapName.cc.

References bladeName(), diskName(), halfCylinder(), AnalysisDataFormats_SUSYBSMObjects::hc, mI, mO, SurfaceOrientation::outer, pannelName(), phase1, pI, plaquetteName(), pO, relativeConstraints::ring, ringName(), and theDisk.

Referenced by ringName().

485  {
486  uint32_t side = 0;
487  uint32_t disk = 0;
488  uint32_t blade = 0;
489  uint32_t panel = 0;
490  uint32_t module = 0;
491 
492  // figure out the side
494  if (hc == mO || hc == mI)
495  side = 1;
496  else if (hc == pO || hc == pI)
497  side = 2;
498 
499  // get disk/blade/panel/module numbers from PixelEndcapName object
500  disk = static_cast<uint32_t>(diskName());
501  uint32_t tmpBlade = static_cast<uint32_t>(bladeName());
502  panel = static_cast<uint32_t>(pannelName());
503 
504  // convert blade numbering to cmssw convention
505  bool outer = false;
506  outer = (hc == mO) || (hc == pO);
507 
508  if (phase1) { // phase1
509 
510  module = 1; // for phase 1 always 1,
511  int ring = static_cast<uint32_t>(ringName()); // this is ring for phase1
512  if (ring == 1) { // ring 1, lower radius
513  if (outer) {
514  if (tmpBlade >= 1 && tmpBlade <= 11)
515  blade = tmpBlade + 6;
516  } else { //inner
517  if (tmpBlade <= 6)
518  blade = 7 - tmpBlade;
519  else
520  blade = 29 - tmpBlade;
521  }
522 
523  } else if (ring == 2) { //ring 2, upper radius
524  if (outer) {
525  if (tmpBlade >= 1 && tmpBlade <= 17)
526  blade = tmpBlade + 31;
527  } else { //inner
528  if (tmpBlade <= 9)
529  blade = 32 - tmpBlade;
530  else
531  blade = 66 - tmpBlade;
532  }
533  }
534 
535  } else { // phase 0
536 
537  if (outer) {
538  blade = tmpBlade + 6;
539  } else { // inner
540  if (tmpBlade <= 6)
541  blade = 7 - tmpBlade;
542  else if (tmpBlade <= 12)
543  blade = 31 - tmpBlade;
544  }
545 
546  // hack for the pilot blade
547  if (pilot_blade && theDisk == 3) { // do only for disk 3
548  //cout<<tmpBlade<<" "<<blade<<endl;
549  if (blade <= 5)
550  blade -= 3;
551  else
552  blade -= 13;
553  //cout<<tmpBlade<<" "<<blade<<endl;
554  }
555 
556  module = static_cast<uint32_t>(plaquetteName());
557  } // end phase1
558 
559  // create and return the DetId
560  return PXFDetId(side, disk, blade, panel, module);
561 
562 } // PXFDetId PixelEndcapName::getDetId()
int plaquetteName() const
plaquetteId (in pannel)
int bladeName() const
blade id
int pannelName() const
pannel id
susybsm::HSCParticleCollection hc
Definition: classes.h:25
int diskName() const
disk id
int ringName() const
ring Id
HalfCylinder halfCylinder() const
Definition: vlib.h:208
DetId PixelEndcapName::getDetId ( const TrackerTopology tt)

Definition at line 403 of file PixelEndcapName.cc.

References bladeName(), diskName(), halfCylinder(), AnalysisDataFormats_SUSYBSMObjects::hc, triggerObjects_cff::id, mI, mO, SurfaceOrientation::outer, pannelName(), phase1, pI, plaquetteName(), pO, TrackerTopology::pxfDetId(), relativeConstraints::ring, ringName(), and theDisk.

403  {
404  uint32_t side = 0;
405  uint32_t disk = 0;
406  uint32_t blade = 0;
407  uint32_t panel = 0;
408  uint32_t module = 0;
409 
410  // figure out the side
412  if (hc == mO || hc == mI)
413  side = 1;
414  else if (hc == pO || hc == pI)
415  side = 2;
416 
417  // get disk/blade/panel/module numbers from PixelEndcapName object
418  disk = static_cast<uint32_t>(diskName());
419  uint32_t tmpBlade = static_cast<uint32_t>(bladeName());
420  panel = static_cast<uint32_t>(pannelName());
421 
422  // convert blade numbering to cmssw convention
423  bool outer = false;
424  outer = (hc == mO) || (hc == pO);
425 
426  if (phase1) { // phase1
427 
428  module = 1;
429  int ring = static_cast<uint32_t>(ringName()); // this is ring for phase1
430  if (ring == 1) { // ring 1, lower radius
431  if (outer) {
432  if (tmpBlade >= 1 && tmpBlade <= 11)
433  blade = tmpBlade + 6;
434  } else { //inner
435  if (tmpBlade <= 6)
436  blade = 7 - tmpBlade;
437  else
438  blade = 29 - tmpBlade;
439  }
440 
441  } else if (ring == 2) { //ring 2, upper radius
442  if (outer) {
443  if (tmpBlade >= 1 && tmpBlade <= 17)
444  blade = tmpBlade + 31;
445  } else { //inner
446  if (tmpBlade <= 9)
447  blade = 32 - tmpBlade;
448  else
449  blade = 66 - tmpBlade;
450  }
451  }
452 
453  } else { // phase 0
454 
455  if (outer) {
456  blade = tmpBlade + 6;
457  } else { // inner
458  if (tmpBlade <= 6)
459  blade = 7 - tmpBlade;
460  else if (tmpBlade <= 12)
461  blade = 31 - tmpBlade;
462  }
463 
464  // hack for the pilot blade
465  if (pilot_blade && theDisk == 3) { // do only for disk 3
466  //cout<<tmpBlade<<" "<<blade<<endl;
467  if (blade <= 5)
468  blade -= 3;
469  else
470  blade -= 13;
471  //cout<<tmpBlade<<" "<<blade<<endl;
472  }
473 
474  module = static_cast<uint32_t>(plaquetteName());
475  } // end phase1
476 
477  // create and return the DetId
478  DetId id = tt->pxfDetId(side, disk, blade, panel, module);
479 
480  return id;
481 
482 } // PXFDetId PixelEndcapName::getDetId()
int plaquetteName() const
plaquetteId (in pannel)
DetId pxfDetId(uint32_t side, uint32_t disk, uint32_t blade, uint32_t panel, uint32_t module) const
int bladeName() const
blade id
Definition: DetId.h:18
int pannelName() const
pannel id
susybsm::HSCParticleCollection hc
Definition: classes.h:25
int diskName() const
disk id
int ringName() const
ring Id
HalfCylinder halfCylinder() const
Definition: vlib.h:208
HalfCylinder PixelEndcapName::halfCylinder ( ) const
inline
PixelModuleName::ModuleType PixelEndcapName::moduleType ( ) const
overridevirtual

module Type

Implements PixelModuleName.

Definition at line 317 of file PixelEndcapName.cc.

References pannelName(), phase1, plaquetteName(), theDisk, PixelModuleName::v1x2, PixelModuleName::v1x5, PixelModuleName::v2x3, PixelModuleName::v2x4, PixelModuleName::v2x5, and PixelModuleName::v2x8.

Referenced by PixelEndcapLinkMaker::links(), and ringName().

317  {
318  ModuleType type = v1x2;
319 
320  if (phase1) { // phase1
321 
322  type = v2x8;
323 
324  } else { // phase 0
325 
326  if (pannelName() == 1) {
327  if (plaquetteName() == 1) {
328  type = v1x2;
329  } else if (plaquetteName() == 2) {
330  type = v2x3;
331  } else if (plaquetteName() == 3) {
332  type = v2x4;
333  } else if (plaquetteName() == 4) {
334  type = v1x5;
335  }
336  } else {
337  if (plaquetteName() == 1) {
338  type = v2x3;
339  } else if (plaquetteName() == 2) {
340  type = v2x4;
341  } else if (plaquetteName() == 3) {
342  type = v2x5;
343  }
344  }
345 
346  // hack for the pilot blade
347  if (pilot_blade && theDisk == 3) {
348  type = v2x8;
349  } // do only for disk 3
350 
351  } // end phase1
352 
353  return type;
354 }
int plaquetteName() const
plaquetteId (in pannel)
type
Definition: HCALResponse.h:21
int pannelName() const
pannel id
string PixelEndcapName::name ( ) const
overridevirtual
bool PixelEndcapName::operator== ( const PixelModuleName o) const
overridevirtual

check equality of modules from datamemebers

Implements PixelModuleName.

Definition at line 356 of file PixelEndcapName.cc.

References PixelModuleName::isBarrel(), connectstrParser::o, trackingPlots::other, theBlade, theDisk, thePannel, thePart, and thePlaquette.

Referenced by ringName().

356  {
357  if (!o.isBarrel()) {
358  const PixelEndcapName* other = dynamic_cast<const PixelEndcapName*>(&o);
359  return (other && thePart == other->thePart && theDisk == other->theDisk && theBlade == other->theBlade &&
360  thePannel == other->thePannel && thePlaquette == other->thePlaquette);
361  } else
362  return false;
363 }
HalfCylinder thePart
virtual bool isBarrel() const
true for barrel modules
int PixelEndcapName::pannelName ( ) const
inline
int PixelEndcapName::plaquetteName ( ) const
inline
int PixelEndcapName::ringName ( ) const
inline

ring Id

Definition at line 57 of file PixelEndcapName.h.

References getDetId(), moduleType(), operator==(), and thePlaquette.

Referenced by getDetId(), and SiPixelCoordinates::ring().

57 { return thePlaquette; }

Member Data Documentation

bool PixelEndcapName::phase1
private

Definition at line 72 of file PixelEndcapName.h.

Referenced by getDetId(), moduleType(), name(), and PixelEndcapName().

int PixelEndcapName::theBlade
private

Definition at line 71 of file PixelEndcapName.h.

Referenced by bladeName(), name(), operator==(), and PixelEndcapName().

int PixelEndcapName::theDisk
private

Definition at line 71 of file PixelEndcapName.h.

Referenced by diskName(), getDetId(), moduleType(), name(), operator==(), and PixelEndcapName().

int PixelEndcapName::thePannel
private

Definition at line 71 of file PixelEndcapName.h.

Referenced by name(), operator==(), pannelName(), and PixelEndcapName().

HalfCylinder PixelEndcapName::thePart
private

Definition at line 70 of file PixelEndcapName.h.

Referenced by halfCylinder(), name(), operator==(), and PixelEndcapName().

int PixelEndcapName::thePlaquette
private

Definition at line 71 of file PixelEndcapName.h.

Referenced by name(), operator==(), PixelEndcapName(), plaquetteName(), and ringName().