47 #ifndef XPETRA_STRIDEDMAPFACTORY_DECL_HPP 48 #define XPETRA_STRIDEDMAPFACTORY_DECL_HPP 66 template<
class LocalOrdinal,
69 class StridedMapFactory
72 #undef XPETRA_STRIDEDMAPFACTORY_SHORT 83 static RCP<Xpetra::StridedMap<LocalOrdinal, GlobalOrdinal, Node>>
86 GlobalOrdinal indexBase,
87 std::vector<size_t>& stridingInfo,
88 const Teuchos::RCP<
const Teuchos::Comm<int>>& comm,
89 LocalOrdinal stridedBlockId = -1,
90 GlobalOrdinal offset = 0,
95 static RCP<StridedMap>
98 size_t numLocalElements,
99 GlobalOrdinal indexBase,
100 std::vector<size_t>& stridingInfo,
101 const Teuchos::RCP<
const Teuchos::Comm<int>>& comm,
102 LocalOrdinal stridedBlockId = -1,
103 GlobalOrdinal offset = 0);
106 static RCP<StridedMap>
107 Build(
const RCP<const Map>& map, std::vector<size_t>& stridingInfo, LocalOrdinal stridedBlockId = -1, GlobalOrdinal offset = 0);
111 static RCP<StridedMap>
112 Build(
const RCP<const StridedMap>& map, LocalOrdinal stridedBlockId);
116 static RCP<StridedMap>
117 Build(
const StridedMap& map);
125 static RCP<StridedMap>
128 const Teuchos::ArrayView<const GlobalOrdinal>& elementList,
129 GlobalOrdinal indexBase,
130 std::vector<size_t>& stridingInfo,
131 const Teuchos::RCP<
const Teuchos::Comm<int>>& comm,
132 LocalOrdinal stridedBlockId = -1,
141 #define XPETRA_STRIDEDMAPFACTORY_SHORT 142 #endif // XPETRA_STRIDEDMAPFACTORY_DECL_HPP
StridedMapFactory()=delete
Private constructor. This is a static class.
size_t global_size_t
Global size_t object.
static RCP< Xpetra::StridedMap< LocalOrdinal, GlobalOrdinal, Node > > Build(UnderlyingLib lib, global_size_t numGlobalElements, GlobalOrdinal indexBase, std::vector< size_t > &stridingInfo, const Teuchos::RCP< const Teuchos::Comm< int >> &comm, LocalOrdinal stridedBlockId=-1, GlobalOrdinal offset=0, LocalGlobal lg=Xpetra::GloballyDistributed)
Map constructor with Xpetra-defined contiguous uniform distribution.