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 EvalType >
bool hasType () const
 Determine if family has an entry for the given type EvalType.
template<typename EvalType >
bool addEntry (const Teuchos::RCP< typename Sacado::mpl::apply< EntryType, EvalType >::type > &entry)
 Add a new parameter using custom entry.
template<typename EvalType >
Teuchos::RCP< typename
Sacado::mpl::apply< EntryType,
EvalType >::type > 
getEntry ()
 Gets the entry corresponding to type EvalType.
template<typename EvalType >
Teuchos::RCP< const typename
Sacado::mpl::apply< EntryType,
EvalType >::type > 
getEntry () const
 Gets the entry corresponding to type EvalType.
void print (std::ostream &os, bool print_values=false) const
 Print the family.

Protected Types

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

Protected Member Functions

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

Protected Attributes

EvalMap 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, typename EntryType>
class Sacado::ParameterFamilyBase< EntryBase, EntryType >

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

Definition at line 49 of file Sacado_ParameterFamilyBase.hpp.


Member Typedef Documentation

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

Map of entries for a parameter name.

Definition at line 103 of file Sacado_ParameterFamilyBase.hpp.

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

Const iterator for EvalMap.

Definition at line 106 of file Sacado_ParameterFamilyBase.hpp.

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

Iterator for EvalMap.

Definition at line 109 of file Sacado_ParameterFamilyBase.hpp.


Constructor & Destructor Documentation

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

Constructor.

Definition at line 36 of file Sacado_ParameterFamilyBaseImp.hpp.

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

Destructor.

Definition at line 48 of file Sacado_ParameterFamilyBaseImp.hpp.

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

Private to prohibit copying.


Member Function Documentation

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

Get the name of the family.

Definition at line 55 of file Sacado_ParameterFamilyBaseImp.hpp.

template<typename EntryBase , typename EntryType >
bool Sacado::ParameterFamilyBase< EntryBase, EntryType >::supportsAD (  )  const [inline]

Indicates whether parameter supports AD derivatives.

Definition at line 63 of file Sacado_ParameterFamilyBaseImp.hpp.

template<typename EntryBase , typename EntryType >
bool Sacado::ParameterFamilyBase< EntryBase, EntryType >::supportsAnalytic (  )  const [inline]

Indicates whether parameter supports analytic derivatives.

Definition at line 71 of file Sacado_ParameterFamilyBaseImp.hpp.

template<typename EntryBase , typename EntryType >
template<class EvalType >
bool Sacado::ParameterFamilyBase< EntryBase, EntryType >::hasType (  )  const [inline]

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

Definition at line 80 of file Sacado_ParameterFamilyBaseImp.hpp.

template<typename EntryBase , typename EntryType>
template<class EvalType >
bool Sacado::ParameterFamilyBase< EntryBase, EntryType >::addEntry ( const Teuchos::RCP< typename Sacado::mpl::apply< EntryType, EvalType >::type > &  entry  )  [inline]

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 , typename EntryType >
template<class EvalType >
Teuchos::RCP< typename Sacado::mpl::apply< EntryType, EvalType >::type > Sacado::ParameterFamilyBase< EntryBase, EntryType >::getEntry (  )  [inline]

Gets the entry corresponding to type EvalType.

Definition at line 123 of file Sacado_ParameterFamilyBaseImp.hpp.

template<typename EntryBase , typename EntryType >
template<class EvalType >
Teuchos::RCP< const typename Sacado::mpl::apply< EntryType, EvalType >::type > Sacado::ParameterFamilyBase< EntryBase, EntryType >::getEntry (  )  const [inline]

Gets the entry corresponding to type EvalType.

Definition at line 153 of file Sacado_ParameterFamilyBaseImp.hpp.

template<typename EntryBase , typename EntryType >
void Sacado::ParameterFamilyBase< EntryBase, EntryType >::print ( std::ostream &  os,
bool  print_values = false 
) const [inline]

Print the family.

Set print_values = true to print each parameter value for each evaluation type.

Definition at line 182 of file Sacado_ParameterFamilyBaseImp.hpp.

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

Returns a string representation of type EntryType.

Definition at line 200 of file Sacado_ParameterFamilyBaseImp.hpp.

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

Private to prohibit copying.


Member Data Documentation

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

Family of parameter entries.

Definition at line 125 of file Sacado_ParameterFamilyBase.hpp.

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

Family name.

Definition at line 128 of file Sacado_ParameterFamilyBase.hpp.

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

Family supports AD.

Definition at line 131 of file Sacado_ParameterFamilyBase.hpp.

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

Family supports analytic derivatives.

Definition at line 134 of file Sacado_ParameterFamilyBase.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 10:19:43 2011 for Sacado Package Browser (Single Doxygen Collection) by  doxygen 1.6.3