13 #ifndef _AbsParameter_h_ 14 #define _AbsParameter_h_ 19 class ParameterDifference;
20 class ParameterProduct;
21 class ParameterQuotient;
22 class ParameterNegation;
23 class ConstPlusParameter;
24 class ConstMinusParameter;
25 class ConstTimesParameter;
26 class ConstOverParameter;
42 virtual double getValue()
const=0;
48 virtual Parameter *parameter() {
return 0;}
49 virtual const Parameter *parameter()
const {
return 0;}
85 #define PARAMETER_OBJECT_DEF(classname) \ 87 classname *clone() const; \ 89 virtual AbsParameter* _clone() const; 92 #define PARAMETER_OBJECT_IMP(classname) \ 93 classname *classname::clone () const { \ 94 return (classname *) _clone(); \ 96 AbsParameter *classname::_clone () const { \ 97 return new classname(*this); \ 101 #include "GeoGenericFunctions/ParameterProduct.h" 102 #include "GeoGenericFunctions/ParameterSum.h" 103 #include "GeoGenericFunctions/ParameterDifference.h" 104 #include "GeoGenericFunctions/ParameterQuotient.h" 105 #include "GeoGenericFunctions/ParameterNegation.h" 106 #include "GeoGenericFunctions/ConstPlusParameter.h" 107 #include "GeoGenericFunctions/ConstMinusParameter.h" 108 #include "GeoGenericFunctions/ConstTimesParameter.h" 109 #include "GeoGenericFunctions/ConstOverParameter.h"