CMS 3D CMS Logo

List of all members | Private Member Functions
CmsTrackerOTDiscBuilder Class Reference

#include <CmsTrackerOTDiscBuilder.h>

Inheritance diagram for CmsTrackerOTDiscBuilder:
CmsTrackerLevelBuilder CmsTrackerAbstractConstruction

Private Member Functions

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

Additional Inherited Members

- Public Member Functions inherited from CmsTrackerLevelBuilder
void build (DDFilteredView &, GeometricDet *, std::string) override
 
 ~CmsTrackerLevelBuilder () override
 
- Public Member Functions inherited from CmsTrackerAbstractConstruction
virtual ~CmsTrackerAbstractConstruction ()=default
 
- Static Public Member Functions inherited from CmsTrackerLevelBuilder
static double getPhi (const GeometricDet *a)
 
static double getPhiGluedModule (const GeometricDet *a)
 
static double getPhiGluedModuleMirror (const GeometricDet *a)
 
static double getPhiMirror (const GeometricDet *a)
 
static double getPhiModule (const GeometricDet *a)
 
static double getPhiModuleMirror (const GeometricDet *a)
 
static bool isLessModZ (const GeometricDet *a, const GeometricDet *b)
 
static bool isLessR (const GeometricDet *a, const GeometricDet *b)
 
static bool isLessRModule (const GeometricDet *a, const GeometricDet *b)
 
static bool isLessZ (const GeometricDet *a, const GeometricDet *b)
 
static bool phiSortNP (const GeometricDet *a, const GeometricDet *b)
 
static bool subDetByType (const GeometricDet *a, const GeometricDet *b)
 
- Protected Attributes inherited from CmsTrackerLevelBuilder
CmsTrackerStringToEnum theCmsTrackerStringToEnum
 

Detailed Description

Class which contructs Phase2 Outer Tracker/Discs.

Definition at line 11 of file CmsTrackerOTDiscBuilder.h.

Member Function Documentation

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

Implements CmsTrackerLevelBuilder.

Definition at line 14 of file CmsTrackerOTDiscBuilder.cc.

References GeometricDet::addComponent(), CmsTrackerLevelBuilder::build(), ExtractStringFromDDD::getString(), and GeometricDet::panel.

15 {
16  CmsTrackerOTRingBuilder theCmsTrackerOTRingBuilder;
18 
20  {
22  theCmsTrackerOTRingBuilder.build( fv, subdet, s );
23  break;
24  default:
25  edm::LogError( "CmsTrackerOTDiscBuilder" ) << " ERROR - I was expecting a Panel, I got a " << ExtractStringFromDDD::getString( s, &fv );
26  }
27  g->addComponent( subdet );
28 }
static std::string getString(std::string const &, DDFilteredView *)
void addComponent(GeometricDet *)
void build(DDFilteredView &, GeometricDet *, std::string) override
GeometricDet::GeometricEnumType type(std::string const &) const
CmsTrackerStringToEnum theCmsTrackerStringToEnum
void CmsTrackerOTDiscBuilder::sortNS ( DDFilteredView fv,
GeometricDet det 
)
overrideprivatevirtual

Reimplemented from CmsTrackerLevelBuilder.

Definition at line 31 of file CmsTrackerOTDiscBuilder.cc.

References GeometricDet::addComponents(), GeometricDet::clearComponents(), AlCaHLTBitMon_QueryRunRegistry::comp, GeometricDet::component(), GeometricDet::components(), GeometricDet::panel, and groupFilesInBlocks::temp.

32 {
33 
34 
36 
37  switch(det->components().front()->type()){
39  // nothing to be done because the rings (here named panels) are already sorted ??
40  break;
41  default:
42  edm::LogError("CmsTrackerOTDiscBuilder")<<"ERROR - wrong SubDet to sort..... "<<det->components().front()->type();
43  }
44 
46  uint32_t totalrings = comp.size();
47 
48 
49  for ( uint32_t rn=0; rn<totalrings; rn++) {
50  rings.emplace_back(det->component(rn));
51  uint32_t blade = rn+1;
52  uint32_t panel = 1;
53  uint32_t temp = (blade<<2) | panel;
54  rings[rn]->setGeographicalID(temp);
55 
56  }
57 
58  det->clearComponents();
59  det->addComponents(rings);
60 
61 }
void clearComponents()
Definition: GeometricDet.h:98
std::vector< GeometricDet * > GeometricDetContainer
Definition: GeometricDet.h:37
ConstGeometricDetContainer & components()
Definition: GeometricDet.h:176
GeometricDet * component(size_t index)
Definition: GeometricDet.h:114
std::vector< GeometricDet const * > ConstGeometricDetContainer
Definition: GeometricDet.h:36
void addComponents(GeometricDetContainer const &cont)