46 #ifndef MUELU_FACTORYMANAGER_DECL_HPP
47 #define MUELU_FACTORYMANAGER_DECL_HPP
72 #ifdef HAVE_MUELU_KOKKOS_REFACTOR
102 template <
class Scalar =
double,
class LocalOrdinal =
int,
class GlobalOrdinal = LocalOrdinal,
class Node = KokkosClassic::DefaultNode::DefaultNodeType>
104 #undef MUELU_FACTORYMANAGER_SHORT
115 #if defined(HAVE_MUELU_KOKKOS_REFACTOR) && defined(HAVE_MUELU_KOKKOS_REFACTOR_USE_BY_DEFAULT)
126 #if defined(HAVE_MUELU_KOKKOS_REFACTOR) && defined(HAVE_MUELU_KOKKOS_REFACTOR_USE_BY_DEFAULT)
166 bool hasFactory(
const std::string& varName)
const;
180 #ifdef HAVE_MUELU_DEBUG
181 void ResetDebugData()
const;
224 #define MUELU_FACTORYMANAGER_SHORT
225 #endif // MUELU_FACTORYMANAGER_DECL_HPP
This class specifies the default factory that should generate some data on a Level if the data does n...
virtual ~FactoryManager()
Destructor.
FactoryManager()
Constructor.
void SetIgnoreUserData(bool bIgnoreUserData=false)
set IgnoreUserData flag
void SetKokkosRefactor(const bool useKokkos)
const RCP< const FactoryBase > GetDefaultFactory(const std::string &varName) const
bool hasFactory(const std::string &varName) const
Check.
const RCP< const FactoryBase > GetFactory(const std::string &varName) const
Get factory associated with a particular data name.
const RCP< const FactoryBase > SetAndReturnDefaultFactory(const std::string &varName, const RCP< const FactoryBase > &factory) const
Class that provides default factories within Needs class.
void SetFactory(const std::string &varName, const RCP< const FactoryBase > &factory)
Set Factory.
const RCP< FactoryBase > GetFactoryNonConst(const std::string &varName)
Get factory associated with a particular data name (NONCONST version)
std::map< std::string, RCP< const FactoryBase > > factoryTable_
User-defined factories.
std::map< std::string, RCP< const FactoryBase > > defaultFactoryTable_
Table that holds default factories.
FactoryManager(const std::map< std::string, RCP< const FactoryBase > > &factoryTable)
Constructor used by HierarchyFactory (temporary, will be removed)
bool useKokkos_
Whether or not to use kokkos factories.