CMS 3D CMS Logo

/data/git/CMSSW_5_3_11_patch5/src/DetectorDescription/Core/src/Division.h

Go to the documentation of this file.
00001 #ifndef DDI_Division_h
00002 #define DDI_Division_h
00003 
00004 #include "DetectorDescription/Core/interface/DDLogicalPart.h"
00005 #include "DetectorDescription/Core/interface/DDAxes.h"
00006 
00007 #include <iostream>
00008 #include <vector>
00009 #include <utility>
00010 #include <map>
00011 
00012 namespace DDI {
00013   class Division {
00014     
00015   public:
00016     Division(const DDLogicalPart & parent,
00017              const DDAxes axis,
00018              const int nReplicas,
00019              const double width,
00020              const double offset );
00021       
00022       
00023     // Constructor with number of divisions 
00024     Division(const DDLogicalPart & parent,
00025              const DDAxes axis,
00026              const int nReplicas,
00027              const double offset );
00028       
00029     // Constructor with width
00030     Division(const DDLogicalPart & parent,
00031              const DDAxes axis,
00032              const double width,
00033              const double offset );
00034       
00035     DDAxes axis() const;
00036     int nReplicas() const;
00037     double width() const;
00038     double offset() const;
00039     const DDLogicalPart & parent() const;
00040     void stream(std::ostream &);
00041       
00042   private:
00043     DDLogicalPart parent_;
00044     DDAxes axis_;
00045     int nReplicas_;
00046     double width_;
00047     double offset_;
00048       
00049   };
00050 }
00051 #endif