]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TEvtGen/EvtGenModels/EvtItgFunction.hh
AliDecayer realisation for the EvtGen code and EvtGen itself.
[u/mrichter/AliRoot.git] / TEvtGen / EvtGenModels / EvtItgFunction.hh
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.1 2002/04/19 20:07:47 lange 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   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