00001 #ifndef ATLFAST_BINID_H
00002 #define ATLFAST_BINID_H
00003
00004 #include <vector>
00005
00006 namespace Atlfast{
00007 using std::vector;
00008
00009 class BinID{
00010
00011 public:
00012 BinID(): m_int(0),m_lowEdge(1, 0.),m_highEdge(1, 0.){}
00013 BinID(int intID, double low1, double high1){
00014 m_int=intID;
00015 m_lowEdge.push_back(low1);
00016 m_highEdge.push_back(high1);
00017 }
00018
00019 BinID(int intID, double low1, double high1, double low2,double high2){
00020 m_int=intID;
00021 m_lowEdge.push_back(low1);
00022 m_lowEdge.push_back(low2);
00023 m_highEdge.push_back(high1);
00024 m_highEdge.push_back(high2);
00025 }
00026
00027 double low(int n=0) const {return m_lowEdge[n];}
00028 double high(int n=0) const {return m_highEdge[n];}
00029
00030 bool operator<(const BinID& other) const { return (m_int < other.m_int); }
00031 private:
00032 int m_int;
00033 vector<double> m_lowEdge;
00034 vector<double> m_highEdge;
00035 };
00036 }
00037 #endif
00038
00039
00040
00041
00042
00043