CMS 3D CMS Logo

Private Member Functions

CmsTrackerPetalBuilder Class Reference

#include <CmsTrackerPetalBuilder.h>

Inheritance diagram for CmsTrackerPetalBuilder:
CmsTrackerLevelBuilder CmsTrackerAbstractConstruction

List of all members.

Private Member Functions

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

Detailed Description

Class which constructs TEC petals

Definition at line 10 of file CmsTrackerPetalBuilder.h.


Member Function Documentation

void CmsTrackerPetalBuilder::buildComponent ( DDFilteredView fv,
GeometricDet g,
std::string  s 
) [private, virtual]
void CmsTrackerPetalBuilder::sortNS ( DDFilteredView fv,
GeometricDet det 
) [private, virtual]

Reimplemented from CmsTrackerLevelBuilder.

Definition at line 21 of file CmsTrackerPetalBuilder.cc.

References GeometricDet::components(), i, relativeConstraints::ring, and python::multivaluedict::sort().

                                                                        {
  GeometricDet::GeometricDetContainer & comp = det->components();

  if (comp.front()->type()==GeometricDet::ring)
    std::sort(comp.begin(),comp.end(),LessR_module());
  else
    edm::LogError("CmsTrackerPetalBuilder")<<"ERROR - wrong SubDet to sort..... "<<det->components().front()->type(); 
  
  // Maximum Number fo TEC Rings is 7 in order 
  // to discover from which number we have to start
  // the operation is MaxRing - RealRingNumber + 1 (C++)
  
  uint32_t startring = 8 - comp.size();
  
  for(uint32_t i=0; i<comp.size(); i++){
    comp[i]->setGeographicalID(startring+i);
  }
}