CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch9/src/Geometry/TrackerCommonData/interface/DDTrackerPhiAlgo.h

Go to the documentation of this file.
00001 #ifndef DD_TrackerPhiAlgo_h
00002 #define DD_TrackerPhiAlgo_h
00003 
00004 #include <map>
00005 #include <string>
00006 #include <vector>
00007 #include "DetectorDescription/Base/interface/DDTypes.h"
00008 #include "DetectorDescription/Algorithm/interface/DDAlgorithm.h"
00009 
00010 class DDTrackerPhiAlgo : public DDAlgorithm {
00011  
00012 public:
00013   //Constructor and Destructor
00014   DDTrackerPhiAlgo(); 
00015   virtual ~DDTrackerPhiAlgo();
00016   
00017   void initialize(const DDNumericArguments & nArgs,
00018                   const DDVectorArguments & vArgs,
00019                   const DDMapArguments & mArgs,
00020                   const DDStringArguments & sArgs,
00021                   const DDStringVectorArguments & vsArgs);
00022 
00023   void execute(DDCompactView& cpv);
00024 
00025 private:
00026 
00027   double        radius;      //Radius
00028   double        tilt;        //Tilt angle
00029   std::vector<double> phi;   //Phi values
00030   std::vector<double> zpos;  //Z positions
00031 
00032   std::string   idNameSpace; //Namespace of this and ALL sub-parts
00033   std::string   childName;   //Child name
00034 
00035   size_t        startcn;     //Start index of copy numbers.
00036   int           incrcn;      //Increment of copy number index.
00037   size_t        numcopies;   //Number of copies == phi.size() above.
00038 };
00039 
00040 #endif