| The Gaudi Framework v29r0 (ff2e7097)

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

IEqSolver.h
Go to the documentation of this file.
1 // =============================================================================
2 #ifndef GAUDIGSL_IEQSOLVER_H
3 #define GAUDIGSL_IEQSOLVER_H 1
4 // Include files
5 // from STL
6 #include <string>
7 #include <vector>
8
9 // from Gaudi
10 #include "GaudiKernel/IAlgTool.h"
11
12 // forward declarations
13 namespace Genfun
14 {
15 class AbsFunction;
16 class Argument;
17 }
18
26 struct GAUDI_API IEqSolver : extend_interfaces<IAlgTool> {
28 DeclareInterfaceID( IEqSolver, 2, 0 );
29
31 typedef Genfun::AbsFunction GenFunc;
33 typedef std::vector<const GenFunc*> Equations;
35 typedef Genfun::Argument Arg;
36
38
47 virtual StatusCode solver( const Equations& equations, Arg& solution ) const = 0;
48 };
49
50 #endif // GAUDIGSL_IEQSOLVER_H
IEqSolver::Equations
std::vector< const GenFunc * > Equations
Vector of the function "GenFunc" which we solver.
Definition: IEqSolver.h:33
IEqSolver
Interface file for multidimensional root-finding (solving nonlinear system with n equations in n unkn...
Definition: IEqSolver.h:26
IEqSolver::Arg
Genfun::Argument Arg
Argument of function "GenFunc" (.
Definition: IEqSolver.h:35
StatusCode
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:28
DeclareInterfaceID
#define DeclareInterfaceID(iface, major, minor)
Macro to declare the interface ID when using the new mechanism of extending and implementing interfac...
Definition: IInterface.h:13
extend_interfaces
Base class to be used to extend an interface.
Definition: extend_interfaces.h:11
IAlgTool.h
std::vector< const GenFunc * >
IEqSolver::GenFunc
Genfun::AbsFunction GenFunc
Function (.
Definition: IEqSolver.h:31
Genfun
CLHEP.
Definition: IEqSolver.h:13
GAUDI_API
#define GAUDI_API
Definition: Kernel.h:110