46 #ifndef MUELU_COORDINATESTRANSFER_FACTORY_KOKKOS_DECL_HPP
47 #define MUELU_COORDINATESTRANSFER_FACTORY_KOKKOS_DECL_HPP
50 #ifdef HAVE_MUELU_KOKKOS_REFACTOR
54 #include <KokkosCompat_ClassicNodeAPI_Wrapper.hpp>
104 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node>
105 class CoordinatesTransferFactory_kokkos;
107 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class DeviceType>
108 class CoordinatesTransferFactory_kokkos<Scalar, LocalOrdinal, GlobalOrdinal, Kokkos::Compat::KokkosDeviceWrapperNode<DeviceType> > :
public TwoLevelFactoryBase {
110 typedef Scalar scalar_type;
111 typedef LocalOrdinal local_ordinal_type;
112 typedef GlobalOrdinal global_ordinal_type;
113 typedef typename DeviceType::execution_space execution_space;
114 typedef Kokkos::Compat::KokkosDeviceWrapperNode<DeviceType> node_type;
118 typedef node_type Node;
119 #undef MUELU_COORDINATESTRANSFERFACTORY_KOKKOS_SHORT
134 CoordinatesTransferFactory_kokkos() { }
137 virtual ~CoordinatesTransferFactory_kokkos() { }
139 RCP<const ParameterList> GetValidParameterList()
const;
151 void DeclareInput(Level& finelevel, Level& coarseLevel)
const;
159 void Build(Level& fineLevel, Level& coarseLevel)
const;
167 #define MUELU_COORDINATESTRANSFERFACTORY_KOKKOS_SHORT
168 #endif // HAVE_MUELU_KOKKOS_REFACTOR
169 #endif // MUELU_COORDINATESTRANSFER_FACTORY_KOKKOS_DECL_HPP