53 #ifndef MUELU_AMALGAMATIONINFO_KOKKOS_DECL_HPP_
54 #define MUELU_AMALGAMATIONINFO_KOKKOS_DECL_HPP_
56 #include <Xpetra_ConfigDefs.hpp>
57 #include <Xpetra_Map_fwd.hpp>
58 #include <Xpetra_MapFactory_fwd.hpp>
59 #include <Xpetra_Vector_fwd.hpp>
65 #ifdef HAVE_MUELU_KOKKOS_REFACTOR
82 class AmalgamationInfo_kokkos
84 #undef MUELU_AMALGAMATIONINFO_KOKKOS_SHORT
89 AmalgamationInfo_kokkos(RCP<Array<LO> > rowTranslation,
90 RCP<Array<LO> > colTranslation,
91 RCP<const Map> nodeRowMap,
92 RCP<const Map> nodeColMap,
93 RCP<
const Xpetra::Map<LocalOrdinal, GlobalOrdinal, Node> >
const &columnMap,
94 LO fullblocksize, GO offset, LO blockid, LO nStridedOffset, LO stridedblocksize) :
95 rowTranslation_(rowTranslation),
96 colTranslation_(colTranslation),
97 nodeRowMap_(nodeRowMap),
98 nodeColMap_(nodeColMap),
99 columnMap_(columnMap),
100 fullblocksize_(fullblocksize),
103 nStridedOffset_(nStridedOffset),
104 stridedblocksize_(stridedblocksize),
105 indexBase_(columnMap->getIndexBase())
108 virtual ~AmalgamationInfo_kokkos() {}
111 std::string description()
const {
return "AmalgamationInfo"; }
118 RCP<const Map> getNodeRowMap()
const {
return nodeRowMap_; }
119 RCP<const Map> getNodeColMap()
const {
return nodeColMap_; }
128 RCP<Array<LO> > getRowTranslation()
const {
return rowTranslation_; }
129 RCP<Array<LO> > getColTranslation()
const {
return colTranslation_; }
151 GO ComputeGlobalDOF(GO
const &gNodeID, LO
const &k=0)
const;
155 GO GlobalOffset() {
return offset_; }
159 void GetStridingInformation(LO& fullBlockSize, LO& blockID, LO& stridingOffset, LO& stridedBlockSize, GO& indexBase) {
160 fullBlockSize = fullblocksize_;
162 stridingOffset = nStridedOffset_;
163 stridedBlockSize = stridedblocksize_;
164 indexBase = indexBase_;
173 RCP<Array<LO> > rowTranslation_;
174 RCP<Array<LO> > colTranslation_;
177 RCP<const Map> nodeRowMap_;
178 RCP<const Map> nodeColMap_;
192 LO stridedblocksize_;
200 #define MUELU_AMALGAMATIONINFO_KOKKOS_SHORT
201 #endif // HAVE_MUELU_KOKKOS_REFACTOR
MueLu::DefaultLocalOrdinal LocalOrdinal
KokkosClassic::DefaultNode::DefaultNodeType DefaultNode
MueLu::DefaultGlobalOrdinal GlobalOrdinal