CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_6_2_7/src/Geometry/HcalAlgo/plugins/DDHCalFibreBundle.h

Go to the documentation of this file.
00001 #ifndef HcalAlgo_DDHCalFibreBundle_h
00002 #define HcalAlgo_DDHCalFibreBundle_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 DDHCalFibreBundle : public DDAlgorithm {
00011 
00012 public:
00013   //Constructor and Destructor
00014   DDHCalFibreBundle(); 
00015   virtual ~DDHCalFibreBundle();
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   std::string              idNameSpace; //Namespace of this and ALL sub-parts
00028   std::string              childPrefix; //Prefix to child name
00029   std::string              material;    //Name of the material for bundles
00030   double                   deltaZ;      //Width in  Z  for mother
00031   double                   deltaPhi;    //Width in phi for mother
00032   int                      numberPhi;   //Number of sections in phi
00033   double                   tilt;        //Tilt angle of the readout box
00034   std::vector<double>      areaSection; //Area of a bundle
00035   std::vector<double>      rStart;      //Radius at start
00036   std::vector<double>      rEnd;        //Radius at End
00037   std::vector<int>         bundle;      //Bundle to be positioned 
00038 };
00039 
00040 #endif