Sacado  Development
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Pages
Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
Sacado::ParameterFamilyBase< EntryBase, EntryType > Class Template Reference

#include <Sacado_ParameterFamilyBase.hpp>

Inheritance diagram for Sacado::ParameterFamilyBase< EntryBase, EntryType >:
Inheritance graph
[legend]

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, const bool allow_overwrite=false)
 Add a new parameter using custom entry. More...
 
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. More...
 

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.
 

Detailed Description

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

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

Member Function Documentation

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,
const bool  allow_overwrite = false 
)

Add a new parameter using custom entry.

Returns true if successful in adding entry to library, false otherwise. If allow_overwrite is true, any existing entry will be overwritten by the supplied entry.

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

Print the family.

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


The documentation for this class was generated from the following files: