1 #ifndef __FASTJET_RECTANGULARGRID_HH__
2 #define __FASTJET_RECTANGULARGRID_HH__
34 #include "fastjet/PseudoJet.hh"
35 #include "fastjet/Selector.hh"
37 FASTJET_BEGIN_NAMESPACE
46 virtual int tile_index(
const PseudoJet & p)
const = 0;
50 virtual int n_tiles()
const = 0;
70 virtual double tile_area(
int )
const {
return mean_tile_area();}
73 virtual double mean_tile_area()
const = 0;
76 virtual std::string description()
const = 0;
79 virtual bool is_initialised()
const = 0;
80 bool is_initialized()
const {
return is_initialised();}
91 _ymax(rapmax), _ymin(-rapmax),
92 _requested_drap(cell_size), _requested_dphi(cell_size) {
107 : _ymax(rapmax), _ymin(rapmin),
108 _requested_drap(drap), _requested_dphi(dphi),
109 _tile_selector(tile_selector)
123 virtual int tile_index(
const PseudoJet & p)
const;
127 virtual bool tile_is_good(
int itile)
const {
return _tile_selector.worker() ? _is_good[itile] :
true;}
130 virtual double tile_area(
int )
const {
return mean_tile_area();}
136 virtual std::string description()
const;
143 double drap()
const {
return _dy;}
145 double dphi()
const {
return _dphi;}
155 double _requested_drap;
156 double _requested_dphi;
159 double _dy, _dphi, _cell_area, _inverse_dy, _inverse_dphi;
160 int _ny, _nphi, _ntotal;
166 std::vector<bool> _is_good;
170 FASTJET_END_NAMESPACE
172 #endif // __FASTJET_RECTANGULARGRID_HH__