]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TEvtGen/EvtGenModels/EvtItgThreeCoeffFcn.hh
ATO-78 - Technical changes to compare different calibrations
[u/mrichter/AliRoot.git] / TEvtGen / EvtGenModels / EvtItgThreeCoeffFcn.hh
CommitLineData
da0e9ce3 1//--------------------------------------------------------------------------
2//
3//
4// Copyright Information: See EvtGen/COPYRIGHT
5//
6// Environment:
7// This software is part of the EvtGen package developed jointly
8// for the BaBar and CLEO collaborations. If you use all or part
9// of it, please give an appropriate acknowledgement.
10//
11// Module: EvtItgThreeCoeffFcn.hh
12//
13// Description:
14// Class describing a function with three vectors of coefficients.
15//
16// Modification history:
17//
18// Jane Tinslay March 21, 2001 Module created
19//
20//------------------------------------------------------------------------
21
22#ifndef EVTITTHREECOEFFFCN_HH
23#define EVTITTHREECOEFFFCN_HH
24
25#include <vector>
26
27//-------------
28// C Headers --
29//-------------
30extern "C" {
31}
32
33#include "EvtGenModels/EvtItgAbsFunction.hh"
34
35class EvtItgThreeCoeffFcn: public EvtItgAbsFunction {
36
37public:
38
39 EvtItgThreeCoeffFcn( double (*theFunction)(double, const std::vector<double> &, const std::vector<double> &, const std::vector<double> &),
40 double lowerRange, double upperRange, const std::vector<double> &coeffs1, const std::vector<double> &coeffs2, const std::vector<double> &coeffs3);
41
42
43 virtual ~EvtItgThreeCoeffFcn( );
44 virtual void setCoeff(int, int, double);
45 virtual double getCoeff(int, int);
46
47protected:
48
49 virtual double myFunction(double x) const;
50
51private:
52
53 // Data members
54 double (*_myFunction)(double x, const std::vector<double> & coeffs1, const std::vector<double> & coeffs2, const std::vector<double> & coeffs3);
55
56 // Note: if your class needs a copy constructor or an assignment operator,
57 // make one of the following public and implement it.
58 EvtItgThreeCoeffFcn( const EvtItgThreeCoeffFcn& ); //// Copy Constructor
59 EvtItgThreeCoeffFcn& operator= ( const EvtItgThreeCoeffFcn& ); // Assignment op
60 std::vector<double> _coeffs1;
61 std::vector<double> _coeffs2;
62 std::vector<double> _coeffs3;
63
64};
65
66#endif // EvtITGPTRFUNCTION_HH