11#include "Teuchos_StaticSetupMacro.hpp" 
   23  getConverterMap().insert(
 
 
   31  ConverterMap::const_iterator 
it =
 
   32    getConverterMap().find(
dependency.getTypeAttributeValue());
 
   35    "Could not find a DependencyXMLConverter for a dependency with " 
   36    "attribute tag " << 
dependency.getTypeAttributeValue() <<
 
   38    "Try adding an appropriate converter to the DependencyXMLConverterDB " <<
 
   39    "in order to solve this problem." << std::endl << std::endl);
 
 
   50  #ifdef HAVE_TEUCHOS_DEBUG 
   51  std::ostringstream 
sout;
 
   55  #ifdef HAVE_TEUCHOS_DEBUG 
   63    "Could not find a DependencyXMLConverter for a dependency of type " <<
 
   65    "Try adding an appropriate converter to the DependencyXMLConverterDB " <<
 
   66    "in order to solve this problem." << std::endl << std::endl << 
extraError 
 
   89DependencyXMLConverterDB::ConverterMap&
 
   90DependencyXMLConverterDB::getConverterMap()
 
  103TEUCHOS_STATIC_SETUP()
 
A database for DependencyXMLConverters.
 
#define TEUCHOS_ADD_RANGE_VALIDATOR_DEP(T)
Adds a RangeValidatorDependencyXMLConverter temeplated on type T to the list of available converters.
 
#define TEUCHOS_ADD_DEP_CONVERTER(DEP_TYPE, CONVERTER)
Adds converter to the list of DependencyXMLConverters so that all dependencies of DEP_TYPE will be co...
 
#define TEUCHOS_ADD_NUMBER_VISUAL_DEP(T)
Adds a NumberVisualDependencyXMLConverter temeplated on type T to the list of available converters.
 
#define TEUCHOS_ADD_TEMPLATED_NUMBER_DEPS(T)
Adds converters for NumberVisualDepednency, RangeValidatorDepencny, and NumberArrayLengthDependency w...
 
An xml converter for BoolValidatorDependencies.
 
A BoolValidatorDependency says the following about the relationship between two parameters: Dependeni...
 
An xml converter for BoolVisualDepenencies.
 
A bool visual dependency says the following about the relationship between two elements in a Paramete...
 
Thrown when an appropriate Dependency Converter can't be found.
 
An xml converter for ConditionVisualDependencies.
 
A condition visual dependency says the following about the relationship between elements in a Paramet...
 
static XMLObject convertDependency(RCP< const Dependency > dependency, const XMLParameterListWriter::EntryIDsMap &entryIDsMap, ValidatortoIDMap &validatorIDsMap)
Given a dependency converts the dependency to XML.
 
static void addConverter(RCP< const Dependency > dependency, RCP< DependencyXMLConverter > converterToAdd)
Add a converter to the database.
 
static void printKnownConverters(std::ostream &out)
prints the xml tags associated with all known converters
 
static RCP< const DependencyXMLConverter > getConverter(const Dependency &dependency)
Get an appropriate DependencyXMLConverter given a ParameterEntry.
 
static RCP< Dependency > convertXML(const XMLObject &xmlObject, const XMLParameterListReader::EntryIDsMap &entryIDsMap, const IDtoValidatorMap &validatorIDsMap)
Given an XMLObject converts the XMLObject to a Dependency.
 
static const std::string & getTypeAttributeName()
Returns the string to be used for the type attribute.
 
This class represents a depndency between elements in a Parameter List.
 
Maps Validators to integers.
 
Smart reference counting pointer class for automatic garbage collection.
 
An xml converter for StringValidatorDependencies.
 
A StringValidatorDependency says the following about the relationship between two parameters: Depende...
 
An xml converter for StringVisualDepenencies.
 
A string visual dependency says the following about the relationship between two elements in a Parame...
 
A class for mapping validators to integers.
 
Representation of an XML data tree. XMLObject is a ref-counted handle to a XMLObjectImplem object,...
 
std::map< ParameterEntry::ParameterEntryID, RCP< ParameterEntry > > EntryIDsMap
Convenience typedef.
 
std::map< RCP< const ParameterEntry >, ParameterEntry::ParameterEntryID, RCPConstComp > EntryIDsMap
 
#define TEUCHOS_TEST_FOR_EXCEPTION(throw_exception_test, Exception, msg)
Macro for throwing an exception with breakpointing to ease debugging.
 
The Teuchos namespace contains all of the classes, structs and enums used by Teuchos,...