CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_6_1_2_SLHC2/src/Geometry/EcalCommonData/interface/EcalBaseNumber.h

Go to the documentation of this file.
00001 #ifndef EcalCommonData_EcalBaseNumber_h
00002 #define EcalCommonData_EcalBaseNumber_h
00003 
00010 #include <vector>
00011 #include <string>
00012 
00013 class EcalBaseNumber {
00014  public:
00015 
00016   EcalBaseNumber();
00017   EcalBaseNumber( const EcalBaseNumber & aBaseNumber );
00018   ~EcalBaseNumber(){}
00019   
00020   void setSize(const int & size); 
00021   void addLevel(const std::string& name, const int & copyNumber);
00022   
00023   int getLevels() const;
00024   int getCopyNumber(int level) const;
00025   int getCopyNumber(const std::string& levelName) const;
00026   std::string const & getLevelName(int level) const;
00027   int getCapacity();
00028 
00029   void reset();
00030 
00031  protected:
00032   std::vector<std::string> _sortedName;
00033   std::vector<int> _sortedCopyNumber;
00034   int _theLevels;
00035 
00036 };
00037 
00038 #endif