46 #ifndef XPETRA_MULTIVECTORFACTORY_DEF_HPP
47 #define XPETRA_MULTIVECTORFACTORY_DEF_HPP
51 #include "Xpetra_BlockedMultiVector.hpp"
53 #include "Xpetra_BlockedMap.hpp"
57 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node>
58 Teuchos::RCP<MultiVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>>
65 RCP<const BlockedMap<LocalOrdinal, GlobalOrdinal, Node>> bmap =
68 if (!bmap.is_null()) {
72 #ifdef HAVE_XPETRA_TPETRA
82 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node>
83 Teuchos::RCP<MultiVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>>
86 const Teuchos::ArrayView<
const Teuchos::ArrayView<const Scalar>>& ArrayOfPtrs,
90 #ifdef HAVE_XPETRA_TPETRA
100 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node>
101 Teuchos::RCP<MultiVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>>
104 Teuchos::DataAccess copyOrView) {
107 #ifdef HAVE_XPETRA_TPETRA
108 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)