00001
00002
00008 #ifndef __CBINNING_H__
00009 #define __CBINNING_H__
00010
00011
00016 class Cbinner
00017 {
00018
00019 public:
00020 virtual int get_bin_number(int ipart) =0;
00021 virtual int get_bin_number(double radius) =0;
00022 virtual double get_upbnd_bin(int bin) =0;
00023 virtual double get_lowbnd_bin(int bin) =0;
00024 virtual double get_center_bin(int bin) =0;
00025 };
00026
00027
00032 class CBinLinear: public Cbinner
00033 {
00034
00035 double radmin;
00036 double radmax;
00037 int nbin;
00038
00039 public:
00040 CBinLinear(double radmin, double radmax, int nbin);
00041
00042 int get_bin_number(int);
00043 int get_bin_number(double);
00044 double get_upbnd_bin(int);
00045 double get_lowbnd_bin(int);
00046 double get_center_bin(int);
00047 };
00048
00049
00050 #endif // __CBINNING_H__