46 #ifndef MUELU_COARSEMAPFACTORY_KOKKOS_DECL_HPP_
47 #define MUELU_COARSEMAPFACTORY_KOKKOS_DECL_HPP_
50 #ifdef HAVE_MUELU_KOKKOS_REFACTOR
54 #include <KokkosCompat_ClassicNodeAPI_Wrapper.hpp>
109 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node>
110 class CoarseMapFactory_kokkos;
112 template<
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class DeviceType>
113 class CoarseMapFactory_kokkos<Scalar,LocalOrdinal,GlobalOrdinal,Kokkos::Compat::KokkosDeviceWrapperNode<DeviceType>> :
public SingleLevelFactoryBase {
115 typedef LocalOrdinal local_ordinal_type;
116 typedef GlobalOrdinal global_ordinal_type;
117 typedef typename DeviceType::execution_space execution_space;
118 typedef Kokkos::Compat::KokkosDeviceWrapperNode<DeviceType> node_type;
122 typedef node_type Node;
123 #undef MUELU_COARSEMAPFACTORY_KOKKOS_SHORT
132 CoarseMapFactory_kokkos() { }
135 virtual ~CoarseMapFactory_kokkos() { }
137 RCP<const ParameterList> GetValidParameterList()
const;
149 void DeclareInput(Level& currentLevel)
const;
157 void Build(Level& currentLevel)
const;
165 #define MUELU_COARSEMAPFACTORY_KOKKOS_SHORT
166 #endif // HAVE_MUELU_KOKKOS_REFACTOR