Teuchos::ParameterEntry Class Reference

This object is held as the "value" in the Teuchos::ParameterList std::map. More...

#include <Teuchos_ParameterEntry.hpp>

List of all members.

Private Member Functions

void reset ()
 Reset the entry.

Private Attributes

any val_
 Templated Datatype.
bool isUsed_
 Has this parameter been accessed by a "get" function?
bool isDefault_
 Was this parameter a default value assigned by a "get" function?
std::string docString_
 Optional documentation field.
RCP< const
ParameterEntryValidator
validator_
 Optional validator object.

Related Functions

(Note that these are not member functions.)



template<typename T >
T & getValue (const ParameterEntry &entry)
 A templated helper function for returning the value of type T held in the ParameterEntry object, where the type T can be specified in the call. This is an easier way to call the getValue method in the ParameterEntry class, since the user does not have to pass in a pointer of type T.
bool operator== (const ParameterEntry &e1, const ParameterEntry &e2)
 Returns true if two ParameterEntry objects are equal.
bool operator!= (const ParameterEntry &e1, const ParameterEntry &e2)
 Returns true if two ParameterEntry objects are not equal.
std::ostream & operator<< (std::ostream &os, const ParameterEntry &e)
 Output stream operator for handling the printing of parameter entries.

Constructors/Destructor



 ParameterEntry ()
 Default Constructor.
 ParameterEntry (const ParameterEntry &source)
 Copy constructor.
template<typename T >
 ParameterEntry (T value, bool isDefault=false, bool isList=false, const std::string &docString="", RCP< const ParameterEntryValidator > const &validator=null)
 Templated constructor.
 ~ParameterEntry ()
 Destructor.

Set Methods



ParameterEntryoperator= (const ParameterEntry &source)
 Replace the current parameter entry with source.
template<typename T >
void setValue (T value, bool isDefault=false, const std::string &docString="", RCP< const ParameterEntryValidator > const &validator=null)
 Templated set method that uses the input value type to determine the type of parameter.
void setAnyValue (const any &value, bool isDefault=false)
 Set the value as an any object.
void setValidator (RCP< const ParameterEntryValidator > const &validator)
 Set the validator.
void setDocString (const std::string &docString)
 Set the documentation std::string.
ParameterListsetList (bool isDefault=false, const std::string &docString="")
 Create a parameter entry that is an empty list.

Get Methods



template<typename T >
T & getValue (T *ptr) const
 Templated get method that uses the input pointer type to determine the type of parameter to return.
anygetAny (bool activeQry=true)
 Direct access to the Teuchos::any data value underlying this object. The bool argument activeQry (default: true) indicates that the call to getAny() will set the isUsed() value of the ParameterEntry to true.
const anygetAny (bool activeQry=true) const
 Constant direct access to the Teuchos::any data value underlying this object. The bool argument activeQry (default: true) indicates that the call to getAny() will set the isUsed() value of the ParameterEntry to true.

Attribute/Query Methods



bool isUsed () const
 Return whether or not the value has been used; i.e., whether or not the value has been retrieved via a get function.
bool isList () const
 Return whether or not the value itself is a list.
template<typename T >
bool isType () const
 Test the type of the data being contained.
bool isDefault () const
 Indicate whether this entry takes on the default value.
std::string docString () const
 Return the (optional) documentation std::string.
RCP< const
ParameterEntryValidator
validator () const
 Return the (optional) validator object.

I/O Methods



std::ostream & leftshift (std::ostream &os, bool printFlags=true) const
 Output a non-list parameter to the given output stream.

Detailed Description

This object is held as the "value" in the Teuchos::ParameterList std::map.

This structure holds a Teuchos::any value and information on the status of this parameter (isUsed, isDefault, etc.). The type of parameter is chosen through the templated Set/Get methods.

Definition at line 54 of file Teuchos_ParameterEntry.hpp.


Constructor & Destructor Documentation

Teuchos::ParameterEntry::ParameterEntry (  ) 

Default Constructor.

Definition at line 37 of file Teuchos_ParameterEntry.cpp.

Teuchos::ParameterEntry::ParameterEntry ( const ParameterEntry source  ) 

Copy constructor.

Definition at line 43 of file Teuchos_ParameterEntry.cpp.

template<typename T >
Teuchos::ParameterEntry::ParameterEntry ( value,
bool  isDefault = false,
bool  isList = false,
const std::string &  docString = "",
RCP< const ParameterEntryValidator > const &  validator = null 
) [inline, explicit]

Templated constructor.

Definition at line 271 of file Teuchos_ParameterEntry.hpp.

Teuchos::ParameterEntry::~ParameterEntry (  )  [inline]

Destructor.

Definition at line 286 of file Teuchos_ParameterEntry.hpp.


Member Function Documentation

ParameterEntry & Teuchos::ParameterEntry::operator= ( const ParameterEntry source  ) 

Replace the current parameter entry with source.

Definition at line 49 of file Teuchos_ParameterEntry.cpp.

template<typename T >
void Teuchos::ParameterEntry::setValue ( value,
bool  isDefault = false,
const std::string &  docString = "",
RCP< const ParameterEntryValidator > const &  validator = null 
) [inline]

Templated set method that uses the input value type to determine the type of parameter.

Note:
  • Invalidates any previous values stored by this object although it doesn't necessarily erase them.
  • Resets 'isUsed' functionality.

Definition at line 293 of file Teuchos_ParameterEntry.hpp.

void Teuchos::ParameterEntry::setAnyValue ( const any value,
bool  isDefault = false 
)

Set the value as an any object.

This wipes all other data including documentation strings.

Warning! Do not use function ths to set a sublist!

Definition at line 64 of file Teuchos_ParameterEntry.cpp.

void Teuchos::ParameterEntry::setValidator ( RCP< const ParameterEntryValidator > const &  validator  ) 

Set the validator.

Definition at line 76 of file Teuchos_ParameterEntry.cpp.

void Teuchos::ParameterEntry::setDocString ( const std::string &  docString  ) 

Set the documentation std::string.

Definition at line 84 of file Teuchos_ParameterEntry.cpp.

ParameterList & Teuchos::ParameterEntry::setList ( bool  isDefault = false,
const std::string &  docString = "" 
)

Create a parameter entry that is an empty list.

Definition at line 90 of file Teuchos_ParameterEntry.cpp.

template<typename T >
T & Teuchos::ParameterEntry::getValue ( T *  ptr  )  const [inline]

Templated get method that uses the input pointer type to determine the type of parameter to return.

Note:
This method will cast the value to the type requested. If that type is incorrect, an std::exception will be thrown by the any_cast.

Definition at line 310 of file Teuchos_ParameterEntry.hpp.

any & Teuchos::ParameterEntry::getAny ( bool  activeQry = true  )  [inline]

Direct access to the Teuchos::any data value underlying this object. The bool argument activeQry (default: true) indicates that the call to getAny() will set the isUsed() value of the ParameterEntry to true.

Definition at line 317 of file Teuchos_ParameterEntry.hpp.

const any & Teuchos::ParameterEntry::getAny ( bool  activeQry = true  )  const [inline]

Constant direct access to the Teuchos::any data value underlying this object. The bool argument activeQry (default: true) indicates that the call to getAny() will set the isUsed() value of the ParameterEntry to true.

Definition at line 326 of file Teuchos_ParameterEntry.hpp.

bool Teuchos::ParameterEntry::isUsed (  )  const [inline]

Return whether or not the value has been used; i.e., whether or not the value has been retrieved via a get function.

Definition at line 337 of file Teuchos_ParameterEntry.hpp.

bool Teuchos::ParameterEntry::isList (  )  const

Return whether or not the value itself is a list.

Definition at line 102 of file Teuchos_ParameterEntry.cpp.

template<typename T >
bool Teuchos::ParameterEntry::isType (  )  const [inline]

Test the type of the data being contained.

Definition at line 342 of file Teuchos_ParameterEntry.hpp.

bool Teuchos::ParameterEntry::isDefault (  )  const [inline]

Indicate whether this entry takes on the default value.

Definition at line 346 of file Teuchos_ParameterEntry.hpp.

std::string Teuchos::ParameterEntry::docString (  )  const [inline]

Return the (optional) documentation std::string.

Definition at line 350 of file Teuchos_ParameterEntry.hpp.

RCP< const ParameterEntryValidator > Teuchos::ParameterEntry::validator (  )  const [inline]

Return the (optional) validator object.

Definition at line 355 of file Teuchos_ParameterEntry.hpp.

std::ostream & Teuchos::ParameterEntry::leftshift ( std::ostream &  os,
bool  printFlags = true 
) const

Output a non-list parameter to the given output stream.

The parameter is followed by "[default]" if it is the default value given through a Set method. Otherwise, if the parameter was unused (not accessed through a Get method), it will be followed by "[unused]". This function is called by the "std::ostream& operator<<".

Definition at line 108 of file Teuchos_ParameterEntry.cpp.

void Teuchos::ParameterEntry::reset (  )  [private]

Reset the entry.

Definition at line 126 of file Teuchos_ParameterEntry.cpp.


Friends And Related Function Documentation

template<typename T >
T & getValue ( const ParameterEntry entry  )  [related]

A templated helper function for returning the value of type T held in the ParameterEntry object, where the type T can be specified in the call. This is an easier way to call the getValue method in the ParameterEntry class, since the user does not have to pass in a pointer of type T.

Definition at line 230 of file Teuchos_ParameterEntry.hpp.

bool operator== ( const ParameterEntry e1,
const ParameterEntry e2 
) [related]

Returns true if two ParameterEntry objects are equal.

Definition at line 238 of file Teuchos_ParameterEntry.hpp.

bool operator!= ( const ParameterEntry e1,
const ParameterEntry e2 
) [related]

Returns true if two ParameterEntry objects are not equal.

Definition at line 251 of file Teuchos_ParameterEntry.hpp.

std::ostream & operator<< ( std::ostream &  os,
const ParameterEntry e 
) [related]

Output stream operator for handling the printing of parameter entries.

Definition at line 259 of file Teuchos_ParameterEntry.hpp.


Member Data Documentation

Templated Datatype.

Definition at line 200 of file Teuchos_ParameterEntry.hpp.

bool Teuchos::ParameterEntry::isUsed_ [mutable, private]

Has this parameter been accessed by a "get" function?

Definition at line 203 of file Teuchos_ParameterEntry.hpp.

bool Teuchos::ParameterEntry::isDefault_ [mutable, private]

Was this parameter a default value assigned by a "get" function?

Definition at line 206 of file Teuchos_ParameterEntry.hpp.

std::string Teuchos::ParameterEntry::docString_ [private]

Optional documentation field.

Definition at line 209 of file Teuchos_ParameterEntry.hpp.

Optional validator object.

Definition at line 217 of file Teuchos_ParameterEntry.hpp.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Generated on Wed Apr 13 09:57:37 2011 for Teuchos Package Browser (Single Doxygen Collection) by  doxygen 1.6.3