23 ConverterPair(function->getTypeAttributeValue(), converterToAdd));
29 ConverterMap::const_iterator it =
33 "Could not find a FunctionObjectXMLConverter for a FuncitonObject of type " <<
34 function.getTypeAttributeValue() <<
" when writing out a condition to " <<
35 "xml." << std::endl << std::endl
49 "Could not find a FunctionObjectXMLConverter for a condition of type " <<
50 functionType <<
" when reading in a condition from " <<
51 "xml." << std::endl << std::endl
59 return getConverter(*function)->fromFunctionObjecttoXML(
function);
66 fromXMLtoFunctionObject(xmlObject);
static XMLObject convertFunctionObject(RCP< const FunctionObject > function)
Given a FunctionObject, converts the FunctionObject to XML.
#define TEUCHOS_TEST_FOR_EXCEPTION(throw_exception_test, Exception, msg)
Macro for throwing an exception with breakpointing to ease debugging.
static const std::string & getTypeAttributeName()
std::pair< std::string, RCP< FunctionObjectXMLConverter > > ConverterPair
convience typedef.
#define TEUCHOS_ADD_SIMPLEFUNCTIONCONVERTERS(T)
Adds a SubtractionFunction, AdditionFunction, MultiplicationFunction, and DivisionFunction of type T ...
A database for FunctionObjectXMLConverters.
Representation of an XML data tree. XMLObject is a ref-counted handle to a XMLObjectImplem object...
Thrown when an appropriate FunctionObject Converter can't be found.
static ConverterMap & getConverterMap()
Gets the default converter to be used to convert FunctionObjects.
static void addConverter(RCP< const FunctionObject > function, RCP< FunctionObjectXMLConverter > converterToAdd)
Add a converter to the database.
Smart reference counting pointer class for automatic garbage collection.
static RCP< FunctionObject > convertXML(const XMLObject &xmlObject)
Given an XMLObject, converts the XMLObject to a FunctionObject.
static RCP< const FunctionObjectXMLConverter > getConverter(const FunctionObject &function)
Get an appropriate FunctionObjectXMLConverter given a FunctionObject.
A function object represents an arbitrary function.
std::map< std::string, RCP< FunctionObjectXMLConverter > > ConverterMap
convience class.
A collection of Exceptions thrown when converting FunctionObjects to and from XML.
const std::string & getRequired(const std::string &name) const
Get an attribute, throwing an std::exception if it is not found.