Line data Source code
1 : //--------------------------------------------------------------------------
2 : //
3 : // Environment:
4 : // This software was developed for the BaBar collaboration. If you
5 : // use all or part of it, please give an appropriate acknowledgement.
6 : //
7 : // Copyright Information: See EvtGen/COPYRIGHT
8 : // Copyright (C) 1998 LBNL
9 : //
10 : //------------------------------------------------------------------------
11 :
12 : #ifndef EVTITGFUNCTION_HH
13 : #define EVTITGFUNCTION_HH
14 :
15 : #include "EvtGenModels/EvtItgAbsFunction.hh"
16 :
17 : /**
18 : * Copyright (C) 1998 LBNL
19 : *
20 : * Generic function where the pointer to the function is available.
21 : *
22 : * The function is taken as type pointer to function returning double and
23 : * taking a double (the abscissa) and a const RWTValVector<double> reference
24 : * (the parameter values of the function) as arguments.
25 : *
26 : * @see EvtItgFunctionEvtItgFunction
27 : *
28 : * @version $Id: EvtItgFunction.hh,v 1.2 2009-03-16 16:34:00 robbep Exp $
29 : *
30 : * @author Phil Strother Originator
31 : */
32 :
33 : class EvtItgFunction: public EvtItgAbsFunction {
34 :
35 : public:
36 :
37 : // Constructors
38 : EvtItgFunction( double (*theFunction)(double),
39 : double lowerRange, double upperRange);
40 :
41 :
42 : // Destructor
43 : virtual ~EvtItgFunction( );
44 :
45 0 : virtual void setCoeff(int, int, double) {};
46 0 : virtual double getCoeff(int, int) {return 0.0;};
47 :
48 : protected:
49 :
50 : // Helper functions
51 :
52 : virtual double myFunction(double x) const;
53 :
54 : private:
55 :
56 : // Data members
57 : double (*_myFunction)(double x);
58 :
59 : // Note: if your class needs a copy constructor or an assignment operator,
60 : // make one of the following public and implement it.
61 : EvtItgFunction( const EvtItgFunction& ); // Copy Constructor
62 : EvtItgFunction& operator= ( const EvtItgFunction& ); // Assignment op
63 : };
64 :
65 : #endif // EvtITGFUNCTION_HH
|