CLHEP VERSION Reference Documentation
   
CLHEP Home Page     CLHEP Documentation     CLHEP Bug Reports

GenericFunctions/FunctionComposition.hh
Go to the documentation of this file.
1// -*- C++ -*-
2// $Id: FunctionComposition.hh,v 1.2 2003/09/06 14:04:13 boudreau Exp $
3//--------------------------FunctionComposition-----------------------------//
4// //
5// FunctionComposition, result of composition of two functions. //
6// Joe Boudreau, Petar Maksimovic, November 1999 //
7// //
8//--------------------------------------------------------------------------//
9
10#ifndef FunctionComposition_h
11#define FunctionComposition_h 1
13
14namespace Genfun {
15
20 class FunctionComposition : public AbsFunction {
21
23
24 public:
25
26 // Constructor
27 FunctionComposition(const AbsFunction *arg1, const AbsFunction *arg2);
28
29 // Copy constructor
31
32 // Destructor
34
35 // Retreive function value
36 virtual double operator ()(double argument) const;
37 virtual double operator ()(const Argument & a) const;
38
39 // Dimensionality
40 virtual unsigned int dimensionality() const;
41
42 // Derivative.
43 Derivative partial (unsigned int) const;
44
45 // Does this function have an analytic derivative?
46 virtual bool hasAnalyticDerivative() const {return true;}
47
48 private:
49
50 // It is illegal to assign a FunctionComposition
51 const FunctionComposition & operator=(const FunctionComposition &right);
52
53 const AbsFunction *_arg1;
54 const AbsFunction *_arg2;
55 };
56} // namespace Genfun
57#endif
#define FUNCTION_OBJECT_DEF(classname)
Derivative partial(unsigned int) const
FunctionComposition(const FunctionComposition &right)
virtual double operator()(double argument) const
virtual unsigned int dimensionality() const
FunctionComposition(const AbsFunction *arg1, const AbsFunction *arg2)
@ a