Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:14:28

0001 #ifndef EcalCommonData_EcalBaseNumber_h
0002 #define EcalCommonData_EcalBaseNumber_h
0003 
0004 /** \class EcalBaseNumber
0005  *   
0006  * \author Paolo Meridiani, INFN Roma1 
0007  */
0008 
0009 #include <vector>
0010 #include <string>
0011 
0012 class EcalBaseNumber {
0013 public:
0014   EcalBaseNumber();
0015   EcalBaseNumber(const EcalBaseNumber& aBaseNumber);
0016   ~EcalBaseNumber() {}
0017 
0018   void setSize(const int& size);
0019   void addLevel(const std::string& name, const int& copyNumber);
0020 
0021   int getLevels() const;
0022   int getCopyNumber(int level) const;
0023   int getCopyNumber(const std::string& levelName) const;
0024   std::string const& getLevelName(int level) const;
0025   int getCapacity();
0026 
0027   void reset();
0028   void reverse();
0029 
0030 protected:
0031   std::vector<std::string> _sortedName;
0032   std::vector<int> _sortedCopyNumber;
0033   int _theLevels;
0034 };
0035 
0036 #endif