Line data Source code
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: EvtItgTwoCoeffFcn.cc
12 : //
13 : // Description:
14 : // Class describing a function with two vectors of coefficients.
15 : //
16 : // Modification history:
17 : //
18 : // Jane Tinslay March 21, 2001 Module created
19 : //
20 : //------------------------------------------------------------------------
21 : #include "EvtGenBase/EvtPatches.hh"
22 :
23 : #include "EvtGenModels/EvtItgTwoCoeffFcn.hh"
24 :
25 : //-------------
26 : // C Headers --
27 : //-------------
28 : extern "C" {
29 : }
30 :
31 : EvtItgTwoCoeffFcn::EvtItgTwoCoeffFcn( double (*theFunction)(double, const std::vector<double> &, const std::vector<double> &), double lowerRange, double upperRange, const std::vector<double> &coeffs1, const std::vector<double> &coeffs2):
32 0 : EvtItgAbsFunction(lowerRange, upperRange),
33 0 : _myFunction(theFunction),
34 0 : _coeffs1(coeffs1),
35 0 : _coeffs2(coeffs2)
36 0 : {}
37 :
38 : EvtItgTwoCoeffFcn::~EvtItgTwoCoeffFcn( )
39 0 : {}
40 :
41 : double
42 : EvtItgTwoCoeffFcn::myFunction(double x) const{
43 0 : return _myFunction(x, _coeffs1, _coeffs2);
44 : }
45 :
46 : void
47 : EvtItgTwoCoeffFcn::setCoeff(int vect, int which, double value)
48 : {
49 0 : if (vect == 1) _coeffs1[which] = value;
50 0 : else if (vect == 2) _coeffs2[which] = value;
51 0 : }
52 :
53 : double
54 : EvtItgTwoCoeffFcn::getCoeff(int vect, int which)
55 : {
56 0 : if (vect == 1) return _coeffs1[which];
57 0 : else if (vect == 2) return _coeffs2[which];
58 0 : else {return 0;}
59 0 : }
60 :
|