]>
Commit | Line | Data |
---|---|---|
da0e9ce3 | 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 | * | |
0ca57c2f | 28 | * @version $Id: EvtItgFunction.hh,v 1.2 2009-03-16 16:34:00 robbep Exp $ |
da0e9ce3 | 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 | virtual void setCoeff(int, int, double) {}; | |
46 | 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 |