44#ifndef TEUCHOS_DEPENDENCYSHEET_HPP_
45#define TEUCHOS_DEPENDENCYSHEET_HPP_
51#include "Teuchos_Dependency.hpp"
145 return (dependenciesMap_.find(dependee) != dependenciesMap_.end()
146 && dependenciesMap_.find(dependee)->second.size() > 0);
171 return dependencies_.empty();
184 return dependencies_.begin();
193 return dependencies_.end();
200 return dependencies_.begin();
206 inline DepSet::const_iterator
depEnd()
const{
207 return dependencies_.end();
217 inline DepSet::size_type
size(){
218 return dependencies_.size();
229 void printDeps(std::ostream& out)
const;
235 static const std::string NAME_ATTRIBUTE_NAME=
"name";
236 return NAME_ATTRIBUTE_NAME;
252 DepMap dependenciesMap_;
257 DepSet dependencies_;
A Dependency sheet keeps track of dependencies between various ParameterEntries.
DepSet::const_iterator depEnd() const
Returns a const iterator to the end of all of the dependees in the sheet.
bool hasDependents(RCP< const ParameterEntry > dependee) const
Determines whether or not a parameter is depended upon by any another parameters or parameter lists.
void setName(const std::string newName)
sets the name of the dependency sheet
DepSet::iterator depBegin()
Returns an iterator to the beginning of all the dependees in the sheet.
DepSet::const_iterator depBegin() const
Returns a const iterator to the beginning of all the dependees in the sheet.
bool empty() const
Determines whether or not this dependency sheet has any dependencies.
std::set< RCP< Dependency >, RCPComp > DepSet
Convience typedef representing a set of dependencies.
const std::string & getName() const
Gets the name of the dependency sheet.
DepSet::iterator depEnd()
DepSet::size_type size()
Returns the number of Dependencies in this DependencySheet.
map< RCP< const ParameterEntry >, DepSet, RCPConstComp > DepMap
Convience typedef. Maps dependee parameter entries to a set of their corresponding dependencies.
static const std::string & getNameAttributeName()
When serializing to XML, this string should be used as the name of the name attribute.
Smart reference counting pointer class for automatic garbage collection.
The Teuchos namespace contains all of the classes, structs and enums used by Teuchos,...
Struct for comparing two RCPs. Simply compares the raw pointers contained within the RCPs.
Struct for comparing two RCPs. Simply compares the raw pointers contained within the RCPs.