BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
EvtItgThreeCoeffFcn.hh
Go to the documentation of this file.
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#include "EvtItgAbsFunction.hh"
33
35
36public:
37 EvtItgThreeCoeffFcn( double ( *theFunction )( double, const std::vector<double>&,
38 const std::vector<double>&,
39 const std::vector<double>& ),
40 double lowerRange, double upperRange,
41 const std::vector<double>& coeffs1, const std::vector<double>& coeffs2,
42 const std::vector<double>& coeffs3 );
43
44 virtual ~EvtItgThreeCoeffFcn();
45 virtual void setCoeff( int, int, double );
46 virtual double getCoeff( int, int );
47
48protected:
49 virtual double myFunction( double x ) const;
50
51private:
52 // Data members
53 double ( *_myFunction )( double x, const std::vector<double>& coeffs1,
54 const std::vector<double>& coeffs2,
55 const std::vector<double>& coeffs3 );
56
57 // Note: if your class needs a copy constructor or an assignment operator,
58 // make one of the following public and implement it.
59 EvtItgThreeCoeffFcn( const EvtItgThreeCoeffFcn& ); //// Copy Constructor
60 EvtItgThreeCoeffFcn& operator=( const EvtItgThreeCoeffFcn& ); // Assignment op
61 std::vector<double> _coeffs1;
62 std::vector<double> _coeffs2;
63 std::vector<double> _coeffs3;
64};
65
66#endif // EvtITGPTRFUNCTION_HH
EvtItgAbsFunction(double lowerRange, double upperRange)
double lowerRange() const
double upperRange() const
EvtItgThreeCoeffFcn(double(*theFunction)(double, const std::vector< double > &, const std::vector< double > &, const std::vector< double > &), double lowerRange, double upperRange, const std::vector< double > &coeffs1, const std::vector< double > &coeffs2, const std::vector< double > &coeffs3)
virtual void setCoeff(int, int, double)
virtual double getCoeff(int, int)
virtual double myFunction(double x) const