Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

EvtItgPtrFunction Class Reference

#include <EvtItgPtrFunction.hh>

Inheritance diagram for EvtItgPtrFunction:

EvtItgAbsFunction List of all members.

Public Member Functions

 EvtItgPtrFunction (double(*theFunction)(double, const std::vector< double > &), double lowerRange, double upperRange, const std::vector< double > &coeffs1)
virtual double getCoeff (int, int)
void getRange (double &lower, double &upper) const
double lowerRange () const
virtual double operator() (double x) const
virtual void setCoeff (int, int, double)
double upperRange () const
virtual double value (double x) const
virtual ~EvtItgPtrFunction ()

Protected Member Functions

virtual double myFunction (double x) const
void setRange (double x1, double x2)

Private Member Functions

 EvtItgPtrFunction (const EvtItgPtrFunction &)
EvtItgPtrFunctionoperator= (const EvtItgPtrFunction &)

Private Attributes

std::vector< double > _coeffs1
double(* _myFunction )(double x, const std::vector< double > &coeffs1)

Constructor & Destructor Documentation

EvtItgPtrFunction::EvtItgPtrFunction double(*)(double, const std::vector< double > &)  theFunction,
double  lowerRange,
double  upperRange,
const std::vector< double > &  coeffs1
 

00035                                                                                                                                                                      :
00036   EvtItgAbsFunction(lowerRange, upperRange),
00037   _myFunction(theFunction),
00038   _coeffs1(coeffs1)
00039 {}

EvtItgPtrFunction::~EvtItgPtrFunction  )  [virtual]
 

00047 {}

EvtItgPtrFunction::EvtItgPtrFunction const EvtItgPtrFunction  )  [private]
 


Member Function Documentation

double EvtItgPtrFunction::getCoeff int  ,
int 
[virtual]
 

Implements EvtItgAbsFunction.

00063 {
00064   if (vect == 1) return _coeffs1[which];
00065   else {return 0;}
00066 }

void EvtItgAbsFunction::getRange double &  lower,
double &  upper
const [inline, inherited]
 

00053 { lower = _lowerRange; upper = _upperRange; } 

double EvtItgAbsFunction::lowerRange  )  const [inline, inherited]
 

00052 {return _lowerRange;}

double EvtItgPtrFunction::myFunction double  x  )  const [protected, virtual]
 

Implements EvtItgAbsFunction.

00051                                            {
00052   return _myFunction(x, _coeffs1);
00053 }

double EvtItgAbsFunction::operator() double  x  )  const [virtual, inherited]
 

00054                                            {
00055   return myFunction(x);
00056 }

EvtItgPtrFunction& EvtItgPtrFunction::operator= const EvtItgPtrFunction  )  [private]
 

void EvtItgPtrFunction::setCoeff int  ,
int  ,
double 
[virtual]
 

Implements EvtItgAbsFunction.

00057 {
00058   if (vect == 1) _coeffs1[which] = value;
00059 }

void EvtItgAbsFunction::setRange double  x1,
double  x2
[inline, protected, inherited]
 

00060 { _lowerRange=x1; _upperRange=x2; };

double EvtItgAbsFunction::upperRange  )  const [inline, inherited]
 

00051 {return _upperRange;}

double EvtItgAbsFunction::value double  x  )  const [virtual, inherited]
 

00045                                        {
00046   if (x >= _lowerRange && x <= _upperRange) return myFunction(x);
00047    report(ERROR,"EvtGen") << "Error in EvtItgAbsFunction::value.  Given co-ordinate " << x
00048                 << " is outside of allowed range [" << _lowerRange << ", "
00049                 << _upperRange << "].  Returning 0.0" << endl;
00050   return 0.0;  // Never get here
00051 }


Member Data Documentation

std::vector<double> EvtItgPtrFunction::_coeffs1 [private]
 

double(* EvtItgPtrFunction::_myFunction)(double x, const std::vector< double > &coeffs1) [private]
 


The documentation for this class was generated from the following files:
Generated on Wed Feb 2 16:06:19 2011 for BOSS6.5.5 by  doxygen 1.3.9.1