10 #ifndef TEUCHOS_DEPENDENCY_HPP_
11 #define TEUCHOS_DEPENDENCY_HPP_
122 return constDependents_;
130 return *(dependees_.begin());
141 return getValue<S>(*(*(dependees_.begin())));
148 virtual std::string getTypeAttributeValue()
const = 0;
155 static const std::string xmlTagName =
"Dependency";
168 virtual void evaluate() = 0;
176 virtual void print(std::ostream& out)
const;
190 virtual void validateDep()
const = 0;
222 void createConstDependents();
227 void checkDependeesAndDependents();
235 #endif //TEUCHOS_DEPENDENCY_HPP_
std::set< RCP< const ParameterEntry >, RCPConstComp > ConstParameterEntryList
A list of dependents.
ParameterEntryList & getDependents()
Gets the dependents of the dependency.
std::set< RCP< ParameterEntry >, RCPComp > ParameterEntryList
A list of Dependees.
This class represents a depndency between elements in a Parameter List.
const ConstParameterEntryList & getDependents() const
Gets the dependents of the dependency.
Struct for comparing two RCPs. Simply compares the raw pointers contained within the RCPs...
S getFirstDependeeValue() const
Convienence function. Returns the first dependee in the list of dependees.
Struct for comparing two RCPs. Simply compares the raw pointers contained within the RCPs...
Dependency()
Declaring and defining the default constructor as private.
const ConstParameterEntryList & getDependees() const
Gets the dependees of the dependency.
Templated Parameter List class.
ConstParameterEntryList dependees_
The parameters being depended upon.
ParameterEntryList dependents_
The dependent paramters.
static const std::string & getXMLTagName()
Returns the XML tag to use when serializing Dependencies.
RCP< const ParameterEntry > getFirstDependee() const
Gets the first dependee in the dependees list. This is a convience function.
#define TEUCHOSPARAMETERLIST_LIB_DLL_EXPORT
ConstParameterEntryList constDependents_
A const version dependent paramters.
Base class for all objects that can describe themselves.
Smart reference counting pointer class for automatic garbage collection.
Reference-counted pointer class and non-member templated function implementations.