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

◆ HalfCylinder

Enumerator
mO 
mI 
pO 
pI 

Definition at line 18 of file PixelEndcapName.h.

Constructor & Destructor Documentation

◆ PixelEndcapName() [1/4]

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(), ALPAKA_ACCELERATOR_NAMESPACE::ecal::reconstruction::internal::barrel::side(), theBlade, theDisk, thePannel, thePart, and thePlaquette.

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)
Log< level::Error, false > LogError
HalfCylinder thePart

◆ PixelEndcapName() [2/4]

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, relativeConstraints::ring, ALPAKA_ACCELERATOR_NAMESPACE::ecal::reconstruction::internal::barrel::side(), 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 }
PixelModuleName(bool isBarrel)
Log< level::Error, false > LogError
HalfCylinder thePart
Definition: TTTypes.h:54

◆ PixelEndcapName() [3/4]

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.

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() [4/4]

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)
Log< level::Error, false > LogError
HalfCylinder thePart
std::string name() const override
from base class

◆ ~PixelEndcapName()

PixelEndcapName::~PixelEndcapName ( )
inlineoverride

Definition at line 37 of file PixelEndcapName.h.

37 {}

Member Function Documentation

◆ bladeName()

int PixelEndcapName::bladeName ( ) const
inline

◆ diskName()

int PixelEndcapName::diskName ( ) const
inline

◆ getDetId() [1/2]

PXFDetId PixelEndcapName::getDetId ( void  )

return DetId

Definition at line 485 of file PixelEndcapName.cc.

References bladeName(), diskName(), halfCylinder(), mI, mO, SurfaceOrientation::outer, pannelName(), phase1, pI, plaquetteName(), pO, relativeConstraints::ring, ringName(), ALPAKA_ACCELERATOR_NAMESPACE::ecal::reconstruction::internal::barrel::side(), and theDisk.

Referenced by SiPixelLorentzAnglePCLHarvester::beginRun(), SiPixelLorentzAnglePCLHarvesterMCS::beginRun(), SiPixelLorentzAnglePCLWorker::dqmBeginRun(), and SiPixelBadModuleByHandBuilder::getNewObject().

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
493  HalfCylinder hc = halfCylinder();
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 ringName() const
ring Id
int bladeName() const
blade id
int diskName() const
disk id
HalfCylinder halfCylinder() const
int pannelName() const
pannel id
int plaquetteName() const
plaquetteId (in pannel)

◆ getDetId() [2/2]

DetId PixelEndcapName::getDetId ( const TrackerTopology tt)

Definition at line 403 of file PixelEndcapName.cc.

References bladeName(), diskName(), halfCylinder(), l1ctLayer2EG_cff::id, mI, mO, SurfaceOrientation::outer, pannelName(), phase1, pI, plaquetteName(), pO, relativeConstraints::ring, ringName(), ALPAKA_ACCELERATOR_NAMESPACE::ecal::reconstruction::internal::barrel::side(), 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
411  HalfCylinder hc = halfCylinder();
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 ringName() const
ring Id
int bladeName() const
blade id
Definition: TTTypes.h:54
int diskName() const
disk id
HalfCylinder halfCylinder() const
Definition: DetId.h:17
int pannelName() const
pannel id
int plaquetteName() const
plaquetteId (in pannel)

◆ halfCylinder()

HalfCylinder PixelEndcapName::halfCylinder ( ) const
inline

◆ moduleType()

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.

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 pannelName() const
pannel id
int plaquetteName() const
plaquetteId (in pannel)

◆ name()

string PixelEndcapName::name ( ) const
overridevirtual

from base class

Implements PixelModuleName.

Definition at line 365 of file PixelEndcapName.cc.

References phase1, theBlade, theDisk, thePannel, thePart, and thePlaquette.

Referenced by config.CFG::__str__(), SiPixelDetSummary::add(), NearbyPixelClustersAnalyzer::bookModuleHistograms(), validation.Sample::digest(), SiPixelInformationExtractor::findNoisyPixels(), VIDSelectorBase.VIDSelectorBase::initialize(), PixelEndcapName(), sipixelobjects::PixelFEDLink::printForMap(), SiPixelPhase1Analyzer::SaveDetectorVertices(), and SiPixelOfflineCalibAnalysisBase::translateDetIdToString().

365  {
366  std::ostringstream stm;
367 
368  if (phase1)
369  stm << "FPix_B" << thePart << "_D" << theDisk << "_BLD" << theBlade << "_PNL" << thePannel << "_RNG"
370  << thePlaquette;
371  else
372  stm << "FPix_B" << thePart << "_D" << theDisk << "_BLD" << theBlade << "_PNL" << thePannel << "_PLQ"
373  << thePlaquette;
374 
375  return stm.str();
376 }
HalfCylinder thePart

◆ operator==()

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 EcalTangentSkim_cfg::o, trackingPlots::other, theBlade, theDisk, thePannel, thePart, and thePlaquette.

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

◆ pannelName()

int PixelEndcapName::pannelName ( ) const
inline

◆ plaquetteName()

int PixelEndcapName::plaquetteName ( ) const
inline

◆ ringName()

int PixelEndcapName::ringName ( ) const
inline

Member Data Documentation

◆ phase1

bool PixelEndcapName::phase1
private

Definition at line 72 of file PixelEndcapName.h.

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

◆ theBlade

int PixelEndcapName::theBlade
private

Definition at line 71 of file PixelEndcapName.h.

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

◆ theDisk

int PixelEndcapName::theDisk
private

Definition at line 71 of file PixelEndcapName.h.

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

◆ thePannel

int PixelEndcapName::thePannel
private

Definition at line 71 of file PixelEndcapName.h.

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

◆ thePart

HalfCylinder PixelEndcapName::thePart
private

Definition at line 70 of file PixelEndcapName.h.

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

◆ thePlaquette

int PixelEndcapName::thePlaquette
private

Definition at line 71 of file PixelEndcapName.h.

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