Teuchos Package Browser (Single Doxygen Collection) Version of the Day
Teuchos::RangeValidatorDependency< T > Class Template Reference

A RangeValidatorDependency says the following about the relationship between two parameters: Dependening on the value of the dependee, the dependent should use a particular validator from a given set of validators. More...

#include <Teuchos_StandardDependencies.hpp>

Inheritance diagram for Teuchos::RangeValidatorDependency< T >:
Inheritance graph
[legend]

List of all members.

Public types

typedef std::pair< T, T > Range
 Convenience typedef.
typedef std::map< Range, RCP
< const
ParameterEntryValidator > > 
RangeToValidatorMap
 Convenience typedef.
typedef std::pair< Range, RCP
< const
ParameterEntryValidator > > 
RangeValidatorPair
 Convenience typedef.

Constructors/Destructor

 RangeValidatorDependency (RCP< const ParameterEntry > dependee, RCP< ParameterEntry > dependent, RangeToValidatorMap rangesAndValidators, RCP< const ParameterEntryValidator > defaultValidator=null)
 Constructs a RangeValidatorDependency.
 RangeValidatorDependency (RCP< const ParameterEntry > dependee, Dependency::ParameterEntryList dependents, RangeToValidatorMap rangesAndValidators, RCP< const ParameterEntryValidator > defaultValidator=null)
 Constructs a RangeValidatorDependency.

Getters

const RangeToValidatorMapgetRangeToValidatorMap () const
 
RCP< const
ParameterEntryValidator
getDefaultValidator () const
 

Overridden from Dependency

void evaluate ()
 
std::string getTypeAttributeValue () const
 
void validateDep () const
 

Private Members

RangeToValidatorMap rangesAndValidators_
 A map associating ranges with validators.
RCP< const
ParameterEntryValidator
defaultValidator_
void setDependentsToValidator (RCP< const ParameterEntryValidator > toSet)

Detailed Description

template<class T>
class Teuchos::RangeValidatorDependency< T >

A RangeValidatorDependency says the following about the relationship between two parameters: Dependening on the value of the dependee, the dependent should use a particular validator from a given set of validators.

A RangeValidatorDependency achieves this by associating ranges of values with validators. If the dependees value falls within the one of the ranges, the validator associated with the range is used on the dependent. If the value doesn't fall within any of the ranges, the dependent's validator is set to the specified default validator. If no default validator was specified, then the dependents validator is set to null.

The minimum of ranges is inclusive and the maximum is exclusive.

A RangeValidatorDependency must have the following characterisitics:

Please see RangeValidatorDependencyXMLConverter for documentation regarding the XML representation of this Dependency.

Definition at line 1548 of file Teuchos_StandardDependencies.hpp.


Member Typedef Documentation

template<class T>
typedef std::pair<T,T> Teuchos::RangeValidatorDependency< T >::Range

Convenience typedef.

Definition at line 1558 of file Teuchos_StandardDependencies.hpp.

template<class T>
typedef std::map<Range, RCP<const ParameterEntryValidator> > Teuchos::RangeValidatorDependency< T >::RangeToValidatorMap

Convenience typedef.

Definition at line 1564 of file Teuchos_StandardDependencies.hpp.

template<class T>
typedef std::pair<Range, RCP<const ParameterEntryValidator> > Teuchos::RangeValidatorDependency< T >::RangeValidatorPair

Convenience typedef.

Definition at line 1570 of file Teuchos_StandardDependencies.hpp.


Constructor & Destructor Documentation

template<class T >
Teuchos::RangeValidatorDependency< T >::RangeValidatorDependency ( RCP< const ParameterEntry dependee,
RCP< ParameterEntry dependent,
RangeToValidatorMap  rangesAndValidators,
RCP< const ParameterEntryValidator defaultValidator = null 
)

Constructs a RangeValidatorDependency.

Parameters:
dependeeThe dependee parameter.
dependentThe dependent parameter.
rangesAndValidatorsA map associating ranges of values with ParameterEntryValidators. This will be used to deteremine what type of validator should be applied to the dependent based on the dependees value.
defaultValidatorThe default validator to be used if the dependee's value does not fall within one of the specified ranges.

Definition at line 1678 of file Teuchos_StandardDependencies.hpp.

template<class T >
Teuchos::RangeValidatorDependency< T >::RangeValidatorDependency ( RCP< const ParameterEntry dependee,
Dependency::ParameterEntryList  dependents,
RangeToValidatorMap  rangesAndValidators,
RCP< const ParameterEntryValidator defaultValidator = null 
)

Constructs a RangeValidatorDependency.

Parameters:
dependeeThe dependee parameter.
dependentsThe dependents.
rangesAndValidatorsA map associating ranges of values with ParameterEntryValidators. This will be used to deteremine what type of validator should be applied to the dependent based on the dependees value.
defaultValidatorThe default validator to be used if the dependee's value does not fall within one of the specified ranges.

Definition at line 1691 of file Teuchos_StandardDependencies.hpp.


Member Function Documentation

template<class T>
const RangeToValidatorMap& Teuchos::RangeValidatorDependency< T >::getRangeToValidatorMap ( ) const [inline]

Definition at line 1621 of file Teuchos_StandardDependencies.hpp.

template<class T>
RCP<const ParameterEntryValidator> Teuchos::RangeValidatorDependency< T >::getDefaultValidator ( ) const [inline]

Definition at line 1626 of file Teuchos_StandardDependencies.hpp.

template<class T >
void Teuchos::RangeValidatorDependency< T >::evaluate ( ) [virtual]

Implements Teuchos::ValidatorDependency.

Definition at line 1711 of file Teuchos_StandardDependencies.hpp.

template<class T >
std::string Teuchos::RangeValidatorDependency< T >::getTypeAttributeValue ( ) const [virtual]

Implements Teuchos::Dependency.

Definition at line 1704 of file Teuchos_StandardDependencies.hpp.

template<class T >
void Teuchos::RangeValidatorDependency< T >::validateDep ( ) const [protected, virtual]

Implements Teuchos::Dependency.

Definition at line 1730 of file Teuchos_StandardDependencies.hpp.

template<class T >
void Teuchos::RangeValidatorDependency< T >::setDependentsToValidator ( RCP< const ParameterEntryValidator toSet) [private]

Definition at line 1774 of file Teuchos_StandardDependencies.hpp.


Member Data Documentation

A map associating ranges with validators.

Definition at line 1667 of file Teuchos_StandardDependencies.hpp.

Definition at line 1671 of file Teuchos_StandardDependencies.hpp.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines