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