Sacado::ParameterFamilyBase< EntryBase, EntryType > Class Template Reference

#include <Sacado_ParameterFamilyBase.hpp>

Inheritance diagram for Sacado::ParameterFamilyBase< EntryBase, EntryType >:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 ParameterFamilyBase (const std::string &name, bool supports_ad, bool supports_analytic)
 Constructor.
virtual ~ParameterFamilyBase ()
 Destructor.
std::string getName () const
 Get the name of the family.
bool supportsAD () const
 Indicates whether parameter supports AD derivatives.
bool supportsAnalytic () const
 Indicates whether parameter supports analytic derivatives.
template<typename ValueType>
bool hasType () const
 Determine if family has an entry for the given type ValueType.
template<typename ValueType>
bool addEntry (const Teuchos::RCP< EntryType< ValueType > > &entry)
 Add a new parameter using custom entry.
template<typename ValueType>
Teuchos::RCP< EntryType< ValueType > > getEntry ()
 Gets the entry corresponding to type ValueType.
template<typename ValueType>
Teuchos::RCP< const EntryType<
ValueType > > 
getEntry () const
 Gets the entry corresponding to type ValueType.
void printFamily (std::ostream &os) const
 Print the family.

Protected Types

typedef std::map< std::string,
Teuchos::RCP< EntryBase > > 
ValueMap
 Map of entries for a parameter name.
typedef ValueMap::const_iterator const_iterator
 Const iterator for ValueMap.
typedef ValueMap::iterator iterator
 Iterator for ValueMap.

Protected Member Functions

template<class ValueType>
std::string getTypeName () const
 Returns a string representation of type ValueType.

Protected Attributes

ValueMap family
 Family of parameter entries.
const std::string name
 Family name.
bool supports_ad
 Family supports AD.
bool supports_analytic
 Family supports analytic derivatives.

Private Member Functions

 ParameterFamilyBase (const ParameterFamilyBase &)
 Private to prohibit copying.
ParameterFamilyBaseoperator= (const ParameterFamilyBase &)
 Private to prohibit copying.

Detailed Description

template<typename EntryBase, template< typename > class EntryType>
class Sacado::ParameterFamilyBase< EntryBase, EntryType >

A class to store multiple template instantiations of a single templated parameter.

Definition at line 47 of file Sacado_ParameterFamilyBase.hpp.


Member Typedef Documentation

template<typename EntryBase, template< typename > class EntryType>
typedef std::map<std::string, Teuchos::RCP<EntryBase> > Sacado::ParameterFamilyBase< EntryBase, EntryType >::ValueMap [protected]

Map of entries for a parameter name.

Definition at line 94 of file Sacado_ParameterFamilyBase.hpp.

template<typename EntryBase, template< typename > class EntryType>
typedef ValueMap::const_iterator Sacado::ParameterFamilyBase< EntryBase, EntryType >::const_iterator [protected]

Const iterator for ValueMap.

Definition at line 97 of file Sacado_ParameterFamilyBase.hpp.

template<typename EntryBase, template< typename > class EntryType>
typedef ValueMap::iterator Sacado::ParameterFamilyBase< EntryBase, EntryType >::iterator [protected]

Iterator for ValueMap.

Definition at line 100 of file Sacado_ParameterFamilyBase.hpp.


Constructor & Destructor Documentation

template<typename EntryBase, template< typename > class EntryType>
Sacado::ParameterFamilyBase< EntryBase, EntryType >::ParameterFamilyBase ( const std::string &  name,
bool  supports_ad,
bool  supports_analytic 
)

Constructor.

Definition at line 36 of file Sacado_ParameterFamilyBaseImp.hpp.

template<typename EntryBase, template< typename > class EntryType>
Sacado::ParameterFamilyBase< EntryBase, EntryType >::~ParameterFamilyBase (  )  [virtual]

Destructor.

Definition at line 48 of file Sacado_ParameterFamilyBaseImp.hpp.

template<typename EntryBase, template< typename > class EntryType>
Sacado::ParameterFamilyBase< EntryBase, EntryType >::ParameterFamilyBase ( const ParameterFamilyBase< EntryBase, EntryType > &   )  [private]

Private to prohibit copying.


Member Function Documentation

template<typename EntryBase, template< typename > class EntryType>
std::string Sacado::ParameterFamilyBase< EntryBase, EntryType >::getName (  )  const

Get the name of the family.

Definition at line 55 of file Sacado_ParameterFamilyBaseImp.hpp.

template<typename EntryBase, template< typename > class EntryType>
bool Sacado::ParameterFamilyBase< EntryBase, EntryType >::supportsAD (  )  const

Indicates whether parameter supports AD derivatives.

Definition at line 63 of file Sacado_ParameterFamilyBaseImp.hpp.

template<typename EntryBase, template< typename > class EntryType>
bool Sacado::ParameterFamilyBase< EntryBase, EntryType >::supportsAnalytic (  )  const

Indicates whether parameter supports analytic derivatives.

Definition at line 71 of file Sacado_ParameterFamilyBaseImp.hpp.

template<typename EntryBase, template< typename > class EntryType>
template<class ValueType>
bool Sacado::ParameterFamilyBase< EntryBase, EntryType >::hasType (  )  const

Determine if family has an entry for the given type ValueType.

Definition at line 80 of file Sacado_ParameterFamilyBaseImp.hpp.

template<typename EntryBase, template< typename > class EntryType>
template<class ValueType>
bool Sacado::ParameterFamilyBase< EntryBase, EntryType >::addEntry ( const Teuchos::RCP< EntryType< ValueType > > &  entry  ) 

Add a new parameter using custom entry.

Returns true if successful in adding entry to library, false otherwise.

Definition at line 98 of file Sacado_ParameterFamilyBaseImp.hpp.

template<typename EntryBase, template< typename > class EntryType>
template<class ValueType>
Teuchos::RCP< EntryType< ValueType > > Sacado::ParameterFamilyBase< EntryBase, EntryType >::getEntry (  ) 

Gets the entry corresponding to type ValueType.

Definition at line 123 of file Sacado_ParameterFamilyBaseImp.hpp.

template<typename EntryBase, template< typename > class EntryType>
template<class ValueType>
Teuchos::RCP< const EntryType< ValueType > > Sacado::ParameterFamilyBase< EntryBase, EntryType >::getEntry (  )  const

Gets the entry corresponding to type ValueType.

Definition at line 154 of file Sacado_ParameterFamilyBaseImp.hpp.

template<typename EntryBase, template< typename > class EntryType>
void Sacado::ParameterFamilyBase< EntryBase, EntryType >::printFamily ( std::ostream &  os  )  const

Print the family.

Definition at line 184 of file Sacado_ParameterFamilyBaseImp.hpp.

template<typename EntryBase, template< typename > class EntryType>
template<class ValueType>
std::string Sacado::ParameterFamilyBase< EntryBase, EntryType >::getTypeName (  )  const [protected]

Returns a string representation of type ValueType.

Definition at line 199 of file Sacado_ParameterFamilyBaseImp.hpp.

template<typename EntryBase, template< typename > class EntryType>
ParameterFamilyBase& Sacado::ParameterFamilyBase< EntryBase, EntryType >::operator= ( const ParameterFamilyBase< EntryBase, EntryType > &   )  [private]

Private to prohibit copying.


Member Data Documentation

template<typename EntryBase, template< typename > class EntryType>
ValueMap Sacado::ParameterFamilyBase< EntryBase, EntryType >::family [protected]

Family of parameter entries.

Definition at line 116 of file Sacado_ParameterFamilyBase.hpp.

template<typename EntryBase, template< typename > class EntryType>
const std::string Sacado::ParameterFamilyBase< EntryBase, EntryType >::name [protected]

Family name.

Definition at line 119 of file Sacado_ParameterFamilyBase.hpp.

template<typename EntryBase, template< typename > class EntryType>
bool Sacado::ParameterFamilyBase< EntryBase, EntryType >::supports_ad [protected]

Family supports AD.

Definition at line 122 of file Sacado_ParameterFamilyBase.hpp.

template<typename EntryBase, template< typename > class EntryType>
bool Sacado::ParameterFamilyBase< EntryBase, EntryType >::supports_analytic [protected]

Family supports analytic derivatives.

Definition at line 125 of file Sacado_ParameterFamilyBase.hpp.


The documentation for this class was generated from the following files:
Generated on Tue Oct 20 12:55:13 2009 for Sacado Package Browser (Single Doxygen Collection) by doxygen 1.4.7