00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef CumulativeChiSquare_h
00010 #define CumulativeChiSquare_h 1
00011 #include "CLHEP/GenericFunctions/AbsFunction.hh"
00012 #include "CLHEP/GenericFunctions/Parameter.hh"
00013 namespace Genfun {
00014
00019 class CumulativeChiSquare : public AbsFunction {
00020
00021 FUNCTION_OBJECT_DEF(CumulativeChiSquare)
00022
00023 public:
00024
00025
00026 CumulativeChiSquare(unsigned int nDof);
00027
00028
00029 CumulativeChiSquare(const CumulativeChiSquare &right);
00030
00031
00032 virtual ~CumulativeChiSquare();
00033
00034
00035 virtual double operator ()(double argument) const;
00036 virtual double operator ()(const Argument & a) const {return operator() (a[0]);}
00037
00038
00039 unsigned int nDof() const;
00040
00041 private:
00042
00043
00044 const CumulativeChiSquare & operator=(const CumulativeChiSquare &right);
00045
00046
00047 unsigned int _nDof;
00048
00049
00050 const AbsFunction *_function;
00051
00052
00053 void create();
00054
00055 };
00056 }
00057
00058 #endif