Teuchos::ParameterEntry Class Reference

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

#include <Teuchos_ParameterEntry.hpp>

Collaboration diagram for Teuchos::ParameterEntry:

[legend]
List of all members.

Public Member Functions

Constructors/Destructor
 ParameterEntry ()
 Default Constructor.
 ParameterEntry (const ParameterEntry &source)
 Copy constructor.
template<typename T>
 ParameterEntry (T value, bool isDefault=false)
 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)
 Templated set method that uses the input value type to determine the type of parameter.
ParameterListsetList (bool isDefault=false)
 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.
const anygetAny () const
 Direct access to the Teuchos::any data value underlying this object.
Attribute 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.
I/O Methods
ostream & leftshift (ostream &os) const
 Output a non-list parameter to the given output stream.

Private Member Functions

void reset ()
 Reset the entry.

Private Attributes

any val_
 Templated Datatype.
bool isList_
 List flag.
bool isUsed_
 Has this parameter been accessed by a "get" function?
bool isDefault_
 Was this parameter a default value assigned by a "get" function?

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.
ostream & operator<< (ostream &os, const ParameterEntry &e)
 Output stream operator for handling the printing of parameter entries.

Detailed Description

This object is held as the "value" in the Teuchos::ParameterList 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

ParameterEntry::ParameterEntry  ) 
 

Default Constructor.

Definition at line 35 of file Teuchos_ParameterEntry.cpp.

ParameterEntry::ParameterEntry const ParameterEntry source  ) 
 

Copy constructor.

Definition at line 42 of file Teuchos_ParameterEntry.cpp.

template<typename T>
Teuchos::ParameterEntry::ParameterEntry value,
bool  isDefault = false
[inline, explicit]
 

Templated constructor.

Definition at line 67 of file Teuchos_ParameterEntry.hpp.

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

Destructor.

Definition at line 74 of file Teuchos_ParameterEntry.hpp.


Member Function Documentation

ParameterEntry & ParameterEntry::operator= const ParameterEntry source  ) 
 

Replace the current parameter entry with source.

Definition at line 47 of file Teuchos_ParameterEntry.cpp.

template<typename T>
void Teuchos::ParameterEntry::setValue value,
bool  isDefault = false
[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 91 of file Teuchos_ParameterEntry.hpp.

ParameterList & ParameterEntry::setList bool  isDefault = false  ) 
 

Create a parameter entry that is an empty list.

Definition at line 60 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 exception will be thrown by the any_cast.

Definition at line 110 of file Teuchos_ParameterEntry.hpp.

const any& Teuchos::ParameterEntry::getAny  )  const [inline]
 

Direct access to the Teuchos::any data value underlying this object.

Note:
This is needed for conversion of a Teuchos parameter entry to a NOX parameter entry. KL 7 August 2004.

Definition at line 121 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 130 of file Teuchos_ParameterEntry.hpp.

bool Teuchos::ParameterEntry::isList  )  const [inline]
 

Return whether or not the value itself is a list.

Definition at line 133 of file Teuchos_ParameterEntry.hpp.

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

Test the type of the data being contained.

Note:
This is not strictly necessary for conversion to NOX parameters, but allows us to use the type-specific NOX parameter constructors for standard data types (ints, doubles, strings, sublists, etc) which gives us better type diagnostics in NOX. Anything non-standard can be written to a NOX AnyPtr parameter. KL 7 August 2004

Definition at line 143 of file Teuchos_ParameterEntry.hpp.

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

Indicate whether this entry takes on the default value.

Definition at line 149 of file Teuchos_ParameterEntry.hpp.

ostream & ParameterEntry::leftshift ostream &  os  )  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 "ostream& operator<<".

Definition at line 76 of file Teuchos_ParameterEntry.cpp.

void ParameterEntry::reset  )  [private]
 

Reset the entry.

Definition at line 69 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 188 of file Teuchos_ParameterEntry.hpp.

ostream & operator<< ostream &  os,
const ParameterEntry e
[related]
 

Output stream operator for handling the printing of parameter entries.

Definition at line 196 of file Teuchos_ParameterEntry.hpp.


Member Data Documentation

any Teuchos::ParameterEntry::val_ [private]
 

Templated Datatype.

Definition at line 169 of file Teuchos_ParameterEntry.hpp.

bool Teuchos::ParameterEntry::isList_ [private]
 

List flag.

Definition at line 172 of file Teuchos_ParameterEntry.hpp.

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

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

Definition at line 175 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 178 of file Teuchos_ParameterEntry.hpp.


The documentation for this class was generated from the following files:
Generated on Thu Sep 18 12:41:20 2008 for Teuchos - Trilinos Tools Package by doxygen 1.3.9.1