Tpetra parallel linear algebra  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Tpetra_SolverMap_CrsMatrix_decl.hpp
Go to the documentation of this file.
1 // @HEADER
2 // *****************************************************************************
3 // Tpetra: Templated Linear Algebra Services Package
4 //
5 // Copyright 2008 NTESS and the Tpetra contributors.
6 // SPDX-License-Identifier: BSD-3-Clause
7 // *****************************************************************************
8 // @HEADER
9 
10 #ifndef TPETRA_SOLVERMAP_CRSMATRIX_DECL_HPP
11 #define TPETRA_SOLVERMAP_CRSMATRIX_DECL_HPP
12 
15 
16 #include <Tpetra_Transform.hpp>
17 #include <Tpetra_CrsMatrix.hpp>
18 
19 namespace Tpetra {
20 
22 
26 template <class Scalar,
27  class LocalOrdinal,
28  class GlobalOrdinal,
29  class Node>
30 class SolverMap_CrsMatrix : public StructuralSameTypeTransform<CrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> > {
31  public:
32  using NewType = typename StructuralSameTypeTransform<CrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> >::NewType;
33  using OriginalType = typename StructuralSameTypeTransform<CrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node> >::OriginalType;
34 
36 
39 
41 
44 
46 
48  NewType operator()(OriginalType const& origMatrix);
49 
50  private:
51  Teuchos::RCP<Map<LocalOrdinal, GlobalOrdinal, Node> > newColMap_;
52  Teuchos::RCP<CrsGraph<LocalOrdinal, GlobalOrdinal, Node> > newGraph_;
53 };
54 
55 } // namespace Tpetra
56 
57 #endif // TPETRA_SOLVERMAP_CRSMATRIX_DECL_HPP
NewType operator()(OriginalType const &origMatrix)