10 #ifndef XPETRA_MULTIVECTORFACTORY_DEF_HPP
11 #define XPETRA_MULTIVECTORFACTORY_DEF_HPP
15 #include "Xpetra_BlockedMultiVector.hpp"
17 #include "Xpetra_BlockedMap.hpp"
21 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node>
22 Teuchos::RCP<MultiVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>>
29 RCP<const BlockedMap<LocalOrdinal, GlobalOrdinal, Node>> bmap =
32 if (!bmap.is_null()) {
36 #ifdef HAVE_XPETRA_TPETRA
46 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node>
47 Teuchos::RCP<MultiVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>>
50 const Teuchos::ArrayView<
const Teuchos::ArrayView<const Scalar>>& ArrayOfPtrs,
54 #ifdef HAVE_XPETRA_TPETRA
64 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node>
65 Teuchos::RCP<MultiVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>>
68 Teuchos::DataAccess copyOrView) {
71 #ifdef HAVE_XPETRA_TPETRA
72 if (source->getMap()->lib() ==
UseTpetra) {
static Teuchos::RCP< MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > Build(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node >> &map, size_t NumVectors, bool zeroOut=true)
Constructor specifying the number of non-zeros for all rows.
#define XPETRA_FACTORY_ERROR_IF_EPETRA(lib)
#define XPETRA_FACTORY_END
#define XPETRA_MONITOR(funcName)