00001 #ifndef ATLFAST_BINID_H
00002 #define ATLFAST_BINID_H
00003
00004 #ifndef STD_VECTOR_H
00005 #include <vector>
00006 #define STD_VECTOR_H
00007 #endif
00008
00009 namespace Atlfast{
00010
00016 class BinID{
00017
00018 public:
00019
00021 BinID(): m_int(0),m_lowEdge(1, 0.),m_highEdge(1, 0.){}
00023 BinID(int intID, double low1, double high1);
00025 BinID(int intID, double low1, double high1, double low2,double high2);
00027 BinID(int intID, std::vector<double> low, std::vector<double> high);
00028
00030 double low(int n=0) const;
00032 double high(int n=0) const;
00033
00035 bool isInBin(const double& var) const;
00037 bool isInBin(const std::vector<double>& var) const;
00038
00040 bool operator<(const BinID& other) const;
00041 private:
00042 int m_int;
00043 std::vector<double> m_lowEdge;
00044 std::vector<double> m_highEdge;
00045 };
00046 }
00047 #endif
00048
00049
00050
00051
00052
00053