45 #ifndef AMESOS2_TPETRAROWMATRIX_MATRIXADAPTER_DECL_HPP 
   46 #define AMESOS2_TPETRAROWMATRIX_MATRIXADAPTER_DECL_HPP 
   48 #include "Amesos2_config.h" 
   50 #include <Teuchos_ArrayView.hpp> 
   51 #include <Tpetra_CrsMatrix.hpp> 
   53 #include "Amesos2_AbstractConcreteMatrixAdapter.hpp" 
   58   template <
class Matrix> 
class MatrixAdapter;
 
   76   template <
typename Scalar,
 
   77       typename LocalOrdinal,
 
   78       typename GlobalOrdinal,
 
   91     typedef Tpetra::RowMatrix<Scalar,
 
   96     typedef Scalar                                scalar_t;
 
   97     typedef LocalOrdinal                   local_ordinal_t;
 
   98     typedef GlobalOrdinal                 global_ordinal_t;
 
  105     typedef typename super_t::global_size_t  global_size_t;
 
  119     void getGlobalRowCopy_impl(global_ordinal_t row,
 
  120              const Teuchos::ArrayView<global_ordinal_t>& indices,
 
  121              const Teuchos::ArrayView<scalar_t>& vals,
 
  124     void getGlobalColCopy_impl(global_ordinal_t col,
 
  125              const Teuchos::ArrayView<global_ordinal_t>& indices,
 
  126              const Teuchos::ArrayView<scalar_t>& vals,
 
  129     global_size_t getGlobalNNZ_impl() 
const;
 
  131     size_t getLocalNNZ_impl() 
const;
 
  133     size_t getMaxRowNNZ_impl() 
const;
 
  135     size_t getMaxColNNZ_impl() 
const;
 
  137     size_t getGlobalRowNNZ_impl(global_ordinal_t row) 
const;
 
  139     size_t getLocalRowNNZ_impl(local_ordinal_t row) 
const;
 
  141     size_t getGlobalColNNZ_impl(global_ordinal_t col) 
const;
 
  143     size_t getLocalColNNZ_impl(local_ordinal_t col) 
const;
 
  145     global_size_t getGlobalNumRows_impl() 
const;
 
  147     global_size_t getGlobalNumCols_impl() 
const;
 
  151     const RCP<
const Tpetra::Map<local_ordinal_t,
 
  156     const RCP<
const Tpetra::Map<local_ordinal_t,
 
  159     getRowMap_impl() 
const;
 
  161     const RCP<
const Tpetra::Map<local_ordinal_t,
 
  164     getColMap_impl() 
const;
 
  166     const RCP<const Teuchos::Comm<int> > getComm_impl() 
const;
 
  168     bool isLocallyIndexed_impl() 
const;
 
  170     bool isGloballyIndexed_impl() 
const;
 
  175     RCP<const super_t> get_impl(
const Teuchos::Ptr<
const Tpetra::Map<local_ordinal_t,global_ordinal_t,node_t> > map, 
EDistribution distribution = ROOTED) 
const;
 
  177     typename super_t::spmtx_ptr_t  getSparseRowPtr() 
const;
 
  179     typename super_t::spmtx_idx_t  getSparseColInd() 
const;
 
  181     typename super_t::spmtx_vals_t getSparseValues() 
const;
 
  187 #endif  // AMESOS2_TPETRAROWMATRIX_MATRIXADAPTER_DECL_HPP 
Utility functions for Amesos2. 
Indicates that the object of an adapter provides row access to its data. 
Definition: Amesos2_TypeDecl.hpp:100
A Matrix adapter interface for Amesos2. 
Definition: Amesos2_MatrixAdapter_decl.hpp:76
Definition: Amesos2_AbstractConcreteMatrixAdapter.hpp:89
Indicates that the concrete class can use the generic getC{c|r}s methods implemented in MatrixAdapter...
Definition: Amesos2_TypeDecl.hpp:91
EDistribution
Definition: Amesos2_TypeDecl.hpp:123