42 #ifndef MATRIX_WITH_OP_GET_GMS_H
43 #define MATRIX_WITH_OP_GET_GMS_H
45 #include "AbstractLinAlgPack_Types.hpp"
46 #include "AbstractLinAlgPack_MatrixOp.hpp"
47 #include "DenseLinAlgPack_DMatrixClass.hpp"
48 #include "Teuchos_dyn_cast.hpp"
50 namespace AbstractLinAlgPack {
160 ,gms_view_(mat_get_.get_gms_view())
164 MatrixDenseEncap::MatrixDenseEncap(
const MatrixOp& mat )
166 ,gms_view_(mat_get_.get_gms_view())
183 #endif // MATRIX_WITH_OP_GET_GMS_H
virtual void free_gms_view(const DMatrixSlice *gms_view) const =0
Free a view of a dense matrix initialized from get_gms_view()>/tt>.
const DMatrixSlice operator()() const
Returns a constant view of the DMatrixSlice view.
T_To & dyn_cast(T_From &from)
virtual const DMatrixSlice get_gms_view() const =0
Get a const view of the abstract matrix in the form DenseLinAlgPack::DMatrixSlice.
Abstract interface that allows the extraction of a const DMatrixSlice view of an abstract matrix...
Helper class type that simplifies the usage of the MatrixOpGetGMS interface for clients.
Base class for all matrices that support basic matrix operations.
~MatrixDenseEncap()
Frees the DMatrixSlice view.