CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_6_1_1/src/Geometry/TrackerGeometryBuilder/interface/TrackerGeomBuilderFromGeometricDet.h

Go to the documentation of this file.
00001 #ifndef Geometry_TrackerGeometryBuilder_TrackerGeomBuilderFromGeometricDet_H
00002 #define Geometry_TrackerGeometryBuilder_TrackerGeomBuilderFromGeometricDet_H
00003 
00004 #include <string>
00005 #include <vector>
00006 #include <map>
00007 #include "Geometry/TrackerGeometryBuilder/interface/PlaneBuilderFromGeometricDet.h"
00008 #include "Geometry/TrackerNumberingBuilder/interface/GeometricDet.h"
00009 #include "Geometry/CommonDetUnit/interface/GeomDetType.h"
00010 
00011 class TrackerGeometry;
00012 class PixelGeomDetType;
00013 class StripGeomDetType;
00014 
00015 class TrackerGeomBuilderFromGeometricDet {
00016 public:
00017 
00018   TrackerGeometry* build(const GeometricDet* gd, const edm::ParameterSet& pSet );
00019 
00020 private:
00021 
00022   void buildPixel(std::vector<const GeometricDet*> const &,
00023                   TrackerGeometry*,GeomDetType::SubDetector det,
00024                   bool upgradeGeometry,
00025                   int BIG_PIX_PER_ROC_X,
00026                   int BIG_PIX_PER_ROC_Y);
00027   void buildSilicon(std::vector<const GeometricDet*> const &,
00028                     TrackerGeometry*,GeomDetType::SubDetector det, const std::string& part);
00029   void buildGeomDet(TrackerGeometry*);
00030 
00031   PlaneBuilderFromGeometricDet::ResultType
00032   buildPlaneWithMaterial(const GeometricDet* gd,double scaleFactor=1.) const;
00033 
00034   std::map<std::string,PixelGeomDetType*> thePixelDetTypeMap;
00035   std::map<std::string,StripGeomDetType*> theStripDetTypeMap;
00036 };
00037 
00038 #endif