ECF 1.7
Step.h
1#ifndef CGPStep_h
2#define CGPStep_h
3#include "Function.h"
4namespace Cartesian {
5
6 template <class T>
7 class StepT : public Function
8 {
9 public:
10 StepT();
11 ~StepT();
12
13 void evaluate(std::vector<T>& inputs, T& result);
14 };
15
16 typedef StepT<double> Step;
17
18 template <class T>
19 StepT<T>::StepT()
20 {
21 name_ = "step";
22 nArguments_ = 1;
23 }
24
25 template <class T>
26 StepT<T>::~StepT()
27 {}
28
29 template <class T>
30 void StepT<T>::evaluate(std::vector<T> &inputs, T &result)
31 {
32 result = (inputs[0] > 0 ? 1 : 0);
33 }
34}
35#endif //Step_h