CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Private Member Functions
CmsTrackerOTRingBuilder Class Reference

#include <CmsTrackerOTRingBuilder.h>

Inheritance diagram for CmsTrackerOTRingBuilder:
CmsTrackerLevelBuilder CmsTrackerAbstractConstruction

Private Member Functions

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

Additional Inherited Members

- Public Member Functions inherited from CmsTrackerLevelBuilder
virtual void build (DDFilteredView &, GeometricDet *, std::string)
 
virtual ~CmsTrackerLevelBuilder ()
 
- Protected Attributes inherited from CmsTrackerLevelBuilder
CmsTrackerStringToEnum theCmsTrackerStringToEnum
 

Detailed Description

Class which contructs PixelForward Panels.

Definition at line 10 of file CmsTrackerOTRingBuilder.h.

Member Function Documentation

void CmsTrackerOTRingBuilder::buildComponent ( DDFilteredView fv,
GeometricDet g,
std::string  s 
)
privatevirtual

Implements CmsTrackerLevelBuilder.

Definition at line 12 of file CmsTrackerOTRingBuilder.cc.

References CmsDetConstruction::buildComponent(), GeometricDet::DetUnit, ExtractStringFromDDD::getString(), CmsTrackerLevelBuilder::theCmsTrackerStringToEnum, and CmsTrackerStringToEnum::type().

12  {
13 
14  CmsDetConstruction theCmsDetConstruction;
17  theCmsDetConstruction.buildComponent(fv,g,s);
18  break;
19  default:
20  edm::LogError("CmsTrackerOTRingBuilder")<<" ERROR - I was expecting a Plaq, I got a "<<ExtractStringFromDDD::getString(s,&fv);
21  ;
22  }
23 }
static std::string getString(std::string const &, DDFilteredView *)
void buildComponent(DDFilteredView &, GeometricDet *, std::string)
GeometricDet::GeometricEnumType type(std::string const &) const
CmsTrackerStringToEnum theCmsTrackerStringToEnum
void CmsTrackerOTRingBuilder::sortNS ( DDFilteredView fv,
GeometricDet det 
)
privatevirtual

Reimplemented from CmsTrackerLevelBuilder.

Definition at line 25 of file CmsTrackerOTRingBuilder.cc.

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

25  {
27 
28  if (comp.front()->type()==GeometricDet::DetUnit){
29 
30  TrackerStablePhiSort(comp.begin(), comp.end(), ExtractPhi());
31  stable_sort(comp.begin(), comp.end() ,PhiSortNP());
32 
33  }
34  else
35  edm::LogError("CmsTrackerOTRingBuilder")<<"ERROR - wrong SubDet to sort..... "<<det->components().front()->type();
36 
37  for(uint32_t i=0; i<comp.size();i++){
38  det->component(i)->setGeographicalID(i+1);
39  }
40 
41 }
int i
Definition: DBlmapReader.cc:9
void setGeographicalID(DetId id)
Definition: GeometricDet.h:80
ConstGeometricDetContainer & components()
Definition: GeometricDet.h:174
void TrackerStablePhiSort(RandomAccessIterator begin, RandomAccessIterator end, const Extractor &extr)
GeometricDet * component(size_t index)
Definition: GeometricDet.h:112
std::vector< GeometricDet const * > ConstGeometricDetContainer
Definition: GeometricDet.h:36