46 #ifndef MUELU_TENTATIVEPFACTORY_KOKKOS_DECL_HPP 
   47 #define MUELU_TENTATIVEPFACTORY_KOKKOS_DECL_HPP 
   50 #ifdef HAVE_MUELU_KOKKOS_REFACTOR 
   54 #include <KokkosCompat_ClassicNodeAPI_Wrapper.hpp> 
   63 #include "MueLu_PFactory.hpp" 
  106   template <
class Scalar, 
class LocalOrdinal, 
class GlobalOrdinal, 
class Node>
 
  107   class TentativePFactory_kokkos;
 
  109   template <
class Scalar, 
class LocalOrdinal, 
class GlobalOrdinal, 
class DeviceType>
 
  114     typedef typename DeviceType::execution_space                     execution_space;
 
  116     typedef Kokkos::Compat::KokkosDeviceWrapperNode<DeviceType>      node_type;
 
  122     typedef node_type                                           
Node;
 
  123 #undef MUELU_TENTATIVEPFACTORY_KOKKOS_SHORT 
  131     TentativePFactory_kokkos() { }
 
  134     virtual ~TentativePFactory_kokkos() { }
 
  137     RCP<const ParameterList> GetValidParameterList() 
const;
 
  142     void DeclareInput(Level& fineLevel, Level& coarseLevel) 
const;
 
  149     void Build (Level& fineLevel, Level& coarseLevel) 
const;
 
  150     void BuildP(Level& fineLevel, Level& coarseLevel) 
const;
 
  162     void BuildPuncoupled(Level& coarseLevel, RCP<Matrix> A, RCP<Aggregates_kokkos> aggregates,
 
  163                          RCP<AmalgamationInfo_kokkos> amalgInfo, RCP<MultiVector> fineNullspace,
 
  164                          RCP<const Map> coarseMap, RCP<Matrix>& Ptentative,
 
  165                          RCP<MultiVector>& coarseNullspace, 
const int levelID) 
const;
 
  166     bool isGoodMap(
const Map& rowMap, 
const Map& colMap) 
const;
 
  170     void BuildPcoupled  (RCP<Matrix> A, RCP<Aggregates_kokkos> aggregates,
 
  171                          RCP<AmalgamationInfo_kokkos> amalgInfo, RCP<MultiVector> fineNullspace,
 
  172                          RCP<const Map> coarseMap, RCP<Matrix>& Ptentative,
 
  173                          RCP<MultiVector>& coarseNullspace) 
const;
 
  175     mutable bool bTransferCoordinates_ = 
false;
 
  181 #define MUELU_TENTATIVEPFACTORY_KOKKOS_SHORT 
  182 #endif // HAVE_MUELU_KOKKOS_REFACTOR 
  183 #endif // MUELU_TENTATIVEPFACTORY_KOKKOS_DECL_HPP 
MueLu::DefaultLocalOrdinal LocalOrdinal
 
MueLu::DefaultScalar Scalar
 
MueLu::DefaultGlobalOrdinal GlobalOrdinal