CMS 3D CMS Logo

CoordinateSelector.h
Go to the documentation of this file.
1 #ifndef NPSTAT_COORDINATESELECTOR_HH_
2 #define NPSTAT_COORDINATESELECTOR_HH_
3 
15 #include <climits>
17 
19 
20 namespace npstat {
26  {
27  public:
28  inline explicit CoordinateSelector(const unsigned i) : index_(i) {}
29 
30  inline ~CoordinateSelector() override {}
31 
32  inline double operator()(const double* point, const unsigned dim) const override
33  {
34  if (dim <= index_)
36  "In npstat::CoordinateSelector::operator(): "
37  "input array dimensionality is too small");
38  return point[index_];
39  }
40  inline unsigned minDim() const override {return index_ + 1U;}
41  inline unsigned maxDim() const override {return UINT_MAX;}
42 
43  private:
44  CoordinateSelector() = delete;
45  unsigned index_;
46  };
47 }
48 
49 #endif // NPSTAT_COORDINATESELECTOR_HH_
50 
unsigned maxDim() const override
Exceptions for the npstat namespace.
unsigned minDim() const override
CoordinateSelector(const unsigned i)
Interface definition for multidimensional functors.
double operator()(const double *point, const unsigned dim) const override
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
Definition: invegas.h:5