ECF 1.7
Function.h
1#ifndef Function_h
2#define Function_h
3#include "Cartesian_c.h"
4
5
6namespace Cartesian
7{
11 class Function
12 {
13 public:
14 Function() {}
15 virtual ~Function() {}
16
20 virtual void evaluate(std::vector<double>& inputs, double& result) = 0;
21
22 std::string getName()
23 {
24 return name_;
25 }
26
27 uint getNumberOfArguments()
28 {
29 return nArguments_;
30 }
31
32 protected:
33 std::string name_;
34 uint nArguments_;
35 };
36 typedef std::shared_ptr<Function> FunctionP;
37}
38
39#endif /* Function_h */
virtual void evaluate(std::vector< double > &inputs, double &result)=0