#include <Geometry/TrackerNumberingBuilder/plugins/CmsTrackerPanelBuilder.h>
Private Member Functions | |
virtual void | buildComponent (DDFilteredView &, GeometricDet *, std::string) |
virtual void | sortNS (DDFilteredView &, GeometricDet *) |
Definition at line 10 of file CmsTrackerPanelBuilder.h.
void CmsTrackerPanelBuilder::buildComponent | ( | DDFilteredView & | fv, | |
GeometricDet * | g, | |||
std::string | s | |||
) | [private, virtual] |
Implements CmsTrackerLevelBuilder.
Definition at line 11 of file CmsTrackerPanelBuilder.cc.
References CmsDetConstruction::buildComponent(), GeometricDet::DetUnit, ExtractStringFromDDD::getString(), CmsTrackerLevelBuilder::theCmsTrackerStringToEnum, and CmsTrackerStringToEnum::type().
00011 { 00012 00013 CmsDetConstruction theCmsDetConstruction; 00014 switch (theCmsTrackerStringToEnum.type(ExtractStringFromDDD::getString(s,&fv))){ 00015 case GeometricDet::DetUnit: 00016 theCmsDetConstruction.buildComponent(fv,g,s); 00017 break; 00018 default: 00019 edm::LogError("CmsTrackerPanelBuilder")<<" ERROR - I was expecting a Plaq, I got a "<<ExtractStringFromDDD::getString(s,&fv); 00020 ; 00021 } 00022 }
void CmsTrackerPanelBuilder::sortNS | ( | DDFilteredView & | fv, | |
GeometricDet * | det | |||
) | [private, virtual] |
Reimplemented from CmsTrackerLevelBuilder.
Definition at line 24 of file CmsTrackerPanelBuilder.cc.
References GeometricDet::components(), GeometricDet::DetUnit, i, and python::multivaluedict::sort().
00024 { 00025 GeometricDet::GeometricDetContainer & comp = det->components(); 00026 00027 if (comp.front()->type()==GeometricDet::DetUnit) 00028 std::sort(comp.begin(),comp.end(),LessR()); 00029 else 00030 edm::LogError("CmsTrackerPanelBuilder")<<"ERROR - wrong SubDet to sort..... "<<det->components().front()->type(); 00031 00032 for(uint32_t i=0; i<comp.size();i++){ 00033 comp[i]->setGeographicalID(i+1); 00034 } 00035 00036 }