24 theCmsTrackerStringBuilder.
build(fv,subdet,s);
27 theCmsTrackerRodBuilder.
build(fv,subdet,s);
30 theCmsTrackerLadderBuilder.
build(fv,subdet,s);
50 float layerRadius = (det->
params()[2]+det->
params()[1])/2.;
65 for(
size_t i = 0;
i< comp.size(); ++
i) {
67 if(component->translation().z()<0.){
68 neg.emplace_back(component);
70 pos.emplace_back(component);
75 double rPos =
i->translation().Rho();
76 if(rPos > layerRadius ){
77 extneg.emplace_back(
i);
79 intneg.emplace_back(
i);
84 double rPos = po->translation().Rho();
85 if(rPos > layerRadius ){
86 extpos.emplace_back(po);
88 intpos.emplace_back(po);
97 for(uint32_t
i=0;
i<intneg.size();
i++){
101 intneg[
i]->setGeographicalID(
DetId(temp));
104 for(uint32_t
i=0;
i<extneg.size();
i++){
108 extneg[
i]->setGeographicalID(
DetId(temp));
111 for(uint32_t
i=0;
i<intpos.size();
i++){
115 intpos[
i]->setGeographicalID(
DetId(temp));
118 for(uint32_t
i=0;
i<extpos.size();
i++){
122 extpos[
i]->setGeographicalID(
DetId(temp));
138 for(
size_t i=0;
i<comp.size(); ++
i) {
140 if(component->translation().z()<0.){
141 neg.emplace_back(component);
143 pos.emplace_back(component);
150 for(uint32_t
i=0;
i<neg.size();
i++){
153 neg[
i]->setGeographicalID(
DetId(temp));
156 for(uint32_t
i=0;
i<pos.size();
i++){
159 pos[
i]->setGeographicalID(
DetId(temp));
170 for(uint32_t
i=0;
i<comp.size();
i++){
175 edm::LogError(
"CmsTrackerLayerBuilder")<<
"ERROR - wrong SubDet to sort..... "<<det->
components().front()->type();
void buildComponent(DDFilteredView &, GeometricDet *, std::string) override
void addComponent(GeometricDet *)
void build(DDFilteredView &, GeometricDet *, std::string) override
static double getPhi(const GeometricDet *a)
void setGeographicalID(DetId id)
std::vector< GeometricDet * > GeometricDetContainer
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e g
ConstGeometricDetContainer & components()
std::vector< double > const & params() const
void sortNS(DDFilteredView &, GeometricDet *) override
GeometricDet * component(size_t index)
void trackerStablePhiSort(RandomAccessIterator begin, RandomAccessIterator end, const Extractor &extr)
std::vector< GeometricDet const * > ConstGeometricDetContainer
void addComponents(GeometricDetContainer const &cont)
GeometricDet::GeometricEnumType type(std::string const &) const
CmsTrackerStringToEnum theCmsTrackerStringToEnum