CMS 3D CMS Logo

List of all members | Public Member Functions
Phase2EndcapSingleRingBuilder Class Reference

#include <Phase2EndcapSingleRingBuilder.h>

Public Member Functions

Phase2EndcapSingleRingbuild (const GeometricDet *aPhase2EndcapSingleRing, const TrackerGeometry *theGeomDetGeometry) __attribute__((cold))
 
 Phase2EndcapSingleRingBuilder ()
 

Detailed Description

A concrete builder for Phase2EndcapSingleRing

Definition at line 14 of file Phase2EndcapSingleRingBuilder.h.

Constructor & Destructor Documentation

◆ Phase2EndcapSingleRingBuilder()

Phase2EndcapSingleRingBuilder::Phase2EndcapSingleRingBuilder ( )
inline

Definition at line 16 of file Phase2EndcapSingleRingBuilder.h.

16 {};

Member Function Documentation

◆ build()

Phase2EndcapSingleRing * Phase2EndcapSingleRingBuilder::build ( const GeometricDet aPhase2EndcapSingleRing,
const TrackerGeometry theGeomDetGeometry 
)

Definition at line 8 of file Phase2EndcapSingleRingBuilder.cc.

References GeometricDet::components(), TrackerGeometry::idToDet(), and LogDebug.

Referenced by Phase2EndcapSubDiskBuilder::build().

9  {
10  vector<const GeometricDet*> allGeometricDets = aPhase2EndcapSingleRing->components();
11  vector<const GeometricDet*> compGeometricDets;
12  vector<const GeomDet*> allDets;
13 
14  for (vector<const GeometricDet*>::const_iterator compGeometricDets = allGeometricDets.begin();
15  compGeometricDets != allGeometricDets.end();
16  compGeometricDets++) {
17  const GeomDet* theGeomDet = theGeomDetGeometry->idToDet((*compGeometricDets)->geographicalId());
18  allDets.push_back(theGeomDet);
19  }
20 
21  LogDebug("TkDetLayers") << "Phase2EndcapSingleRingBuilder with #Modules: " << allGeometricDets.size() << std::endl;
22 
23  return new Phase2EndcapSingleRing(allDets);
24 }
ConstGeometricDetContainer & components()
Definition: GeometricDet.h:158
const TrackerGeomDet * idToDet(DetId) const override
#define LogDebug(id)