42 #ifndef TEUCHOS_STANDARDFUNCTIONOBJECTXMLCONVERTERS_HPP
43 #define TEUCHOS_STANDARDFUNCTIONOBJECTXMLCONVERTERS_HPP
51 #include "Teuchos_StandardFunctionObjects.hpp"
58 template<
class OperandType>
105 static std::string getOperandAttributeName(){
106 static const std::string operandAttributeName =
"operand";
107 return operandAttributeName;
114 template<
class OperandType>
119 OperandType operand =
120 xmlObj.
getRequired<OperandType>(getOperandAttributeName());
121 return getSpecificSimpleFunction(operand);
124 template<
class OperandType>
131 functionObject,
true);
132 OperandType operand = castedFunction->getModifiyingOperand();
134 getSpecialSimpleFunctionXMLTraits(castedFunction, xmlObj);
145 template<
class OperandType>
161 template<
class OperandType>
164 OperandType operand)
const
177 template<
class OperandType>
193 template<
class OperandType>
196 OperandType operand)
const
209 template<
class OperandType>
225 template<
class OperandType>
228 OperandType operand)
const
241 template<
class OperandType>
257 template<
class OperandType>
260 OperandType operand)
const
269 #endif // TEUCHOS_STANDARDFUNCTIONOBJECTXMLCONVERTERS_HPP
RCP< SimpleFunctionObject< OperandType > > getSpecificSimpleFunction(OperandType operand) const
RCP< SimpleFunctionObject< OperandType > > getSpecificSimpleFunction(OperandType operand) const
RCP< FunctionObject > convertXML(const XMLObject &xmlObj) const
A simple function object that multiplys a specififed value from the given arguement in the runFunctio...
Converts back and forth between XML and FunctionObjects.
A simple function object that adds a specififed value from the given arguement in the runFunction fun...
virtual void getSpecialSimpleFunctionXMLTraits(const RCP< const SimpleFunctionObject< OperandType > >, XMLObject &) const
Add and extra XML traits that are specific to a certain FuncitonOjbect when converting that function ...
Class for converting MultiplicationFunction objects to and from XML.
Class for converting SubtractionFunction objects to and from XML.
A simple function object that subtracts a specififed value from the given arguement in the runFunctio...
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
Deprecated.
RCP< SimpleFunctionObject< OperandType > > getSpecificSimpleFunction(OperandType operand) const
Representation of an XML data tree. XMLObject is a ref-counted handle to a XMLObjectImplem object...
Class for converting DivisionFunction objects to and from XML.
Class for converting AdditionFunction objects to and from XML.
void addAttribute(const std::string &name, T value)
Lookup whether or not Doubles are allowed.
virtual RCP< SimpleFunctionObject< OperandType > > getSpecificSimpleFunction(OperandType operand) const =0
Gets the specific SimpleFunction to be returned by this converter when converting from XML...
void convertFunctionObject(const RCP< const FunctionObject > functionObject, XMLObject &xmlObj) const
An abstract base class for converting FunctionObjects to and from XML.
RCP< SimpleFunctionObject< OperandType > > getSpecificSimpleFunction(OperandType operand) const
A simple function object that divides a specififed value from the given arguement in the runFunction ...
Smart reference counting pointer class for automatic garbage collection.
An xml converter for SimpleFunctionObjects.
const std::string & getRequired(const std::string &name) const
Get an attribute, throwing an std::exception if it is not found.
A simple function object that applies a given operand to a spcified arguement using a specific operat...