CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions
CmsTrackerPixelPhase2EndcapBuilder Class Reference

#include <CmsTrackerPixelPhase2EndcapBuilder.h>

Inheritance diagram for CmsTrackerPixelPhase2EndcapBuilder:
CmsTrackerLevelBuilder CmsTrackerAbstractConstruction

Public Member Functions

 CmsTrackerPixelPhase2EndcapBuilder ()
 
- Public Member Functions inherited from CmsTrackerLevelBuilder
void build (DDFilteredView &, GeometricDet *, std::string) override
 
 ~CmsTrackerLevelBuilder () override
 
- Public Member Functions inherited from CmsTrackerAbstractConstruction
virtual ~CmsTrackerAbstractConstruction ()=default
 

Private Member Functions

void buildComponent (DDFilteredView &, GeometricDet *, std::string) override
 
void sortNS (DDFilteredView &, GeometricDet *) override
 

Additional Inherited Members

- Protected Attributes inherited from CmsTrackerLevelBuilder
CmsTrackerStringToEnum theCmsTrackerStringToEnum
 

Detailed Description

Class which builds the pixel phase 2 endcap

Definition at line 11 of file CmsTrackerPixelPhase2EndcapBuilder.h.

Constructor & Destructor Documentation

CmsTrackerPixelPhase2EndcapBuilder::CmsTrackerPixelPhase2EndcapBuilder ( )

Definition at line 14 of file CmsTrackerPixelPhase2EndcapBuilder.cc.

15 {}

Member Function Documentation

void CmsTrackerPixelPhase2EndcapBuilder::buildComponent ( DDFilteredView fv,
GeometricDet g,
std::string  s 
)
overrideprivatevirtual

Implements CmsTrackerLevelBuilder.

Definition at line 18 of file CmsTrackerPixelPhase2EndcapBuilder.cc.

References GeometricDet::addComponent(), CmsTrackerLevelBuilder::build(), ExtractStringFromDDD::getString(), GeometricDet::name(), GeometricDet::OTPhase2Wheel, GeometricDet::PixelPhase2FullDisk, GeometricDet::PixelPhase2ReducedDisk, GeometricDet::PixelPhase2TDRDisk, AlCaHLTBitMon_QueryRunRegistry::string, CmsTrackerLevelBuilder::theCmsTrackerStringToEnum, and CmsTrackerStringToEnum::type().

19 {
20  CmsTrackerPhase2TPDiskBuilder theCmsTrackerPhase2DiskBuilder;
21  CmsTrackerPixelPhase2DiskBuilder theCmsTrackerPixelPhase2DiskBuilder;
22  CmsTrackerOTDiscBuilder theCmsTrackerOTDiscBuilder;
23 
25  std::string subdet_name = subdet->name();
27  {
29  theCmsTrackerPhase2DiskBuilder.build(fv,subdet,s);
30  break;
32  theCmsTrackerPhase2DiskBuilder.build(fv,subdet,s);
33  break;
35  theCmsTrackerPixelPhase2DiskBuilder.build(fv,subdet,s);
36  break;
38  theCmsTrackerOTDiscBuilder.build(fv,subdet,s);
39  break;
40 
41  default:
42  edm::LogError("CmsTrackerPixelPhase2EndcapBuilder")<<" ERROR - I was expecting a Disk... I got a "<<ExtractStringFromDDD::getString(s,&fv);
43  }
44 
45  g->addComponent(subdet);
46 
47 }
static std::string getString(std::string const &, DDFilteredView *)
void addComponent(GeometricDet *)
void build(DDFilteredView &, GeometricDet *, std::string) override
DDName const & name() const
Definition: GeometricDet.h:146
GeometricDet::GeometricEnumType type(std::string const &) const
CmsTrackerStringToEnum theCmsTrackerStringToEnum
void CmsTrackerPixelPhase2EndcapBuilder::sortNS ( DDFilteredView fv,
GeometricDet det 
)
overrideprivatevirtual

Reimplemented from CmsTrackerLevelBuilder.

Definition at line 50 of file CmsTrackerPixelPhase2EndcapBuilder.cc.

References AlCaHLTBitMon_QueryRunRegistry::comp, GeometricDet::component(), GeometricDet::components(), mps_fire::i, and GeometricDet::setGeographicalID().

51 {
53 
54  std::sort( comp.begin(), comp.end(), LessModZ());
55 
56  for( uint32_t i = 0; i < comp.size(); i++ )
57  {
58  det->component(i)->setGeographicalID(i+1); // Every subdetector: Inner pixel first, OT later, then sort by disk number
59  }
60 }
void setGeographicalID(DetId id)
Definition: GeometricDet.h:82
ConstGeometricDetContainer & components()
Definition: GeometricDet.h:176
GeometricDet * component(size_t index)
Definition: GeometricDet.h:114
std::vector< GeometricDet const * > ConstGeometricDetContainer
Definition: GeometricDet.h:36