AbstractLinAlgPack: C++ Interfaces For Vectors, Matrices And Related Linear Algebra Objects
Version of the Day
|
Helper class type that simplifies the usage of the MatrixOpGetGMS
interface for clients.
More...
#include <AbstractLinAlgPack_MatrixOpGetGMS.hpp>
Public Member Functions | |
MatrixDenseEncap (const MatrixOpGetGMS &mat_get) | |
Construct a DMatrixSlice view from a MatrixOpGetGMS object. More... | |
MatrixDenseEncap (const MatrixOp &mat) | |
Construct a DMatrixSlice view from a MatrixOp object. More... | |
~MatrixDenseEncap () | |
Frees the DMatrixSlice view. More... | |
const DMatrixSlice | operator() () const |
Returns a constant view of the DMatrixSlice view. More... | |
Helper class type that simplifies the usage of the MatrixOpGetGMS
interface for clients.
This takes care of worrying about if the MatrixOpGetGMS
interface is supported or not and remembering to free the DMatrixSlice
view properly.
This class is only to be used on the stack as an automatic variable. For example, to extract a DMatrixSlice
view of an abstract vector and use it to copy to a DMatrix
object you could write a function like:
In the above code, if the underlying MatrixOpGetGMS
object does not have to perform any dynamic memory allocations and copy in the method MatrixOpGetGMS::get_gms_view()
then the above code will only have a constant time overhead.
Definition at line 125 of file AbstractLinAlgPack_MatrixOpGetGMS.hpp.
|
inline |
Construct a DMatrixSlice
view from a MatrixOpGetGMS
object.
Definition at line 158 of file AbstractLinAlgPack_MatrixOpGetGMS.hpp.
|
inline |
Construct a DMatrixSlice
view from a MatrixOp
object.
If dynamic_cast<const MatrixOpGetGMS*>(&mat) == NULL
then a ??? exception is thrown.
Definition at line 164 of file AbstractLinAlgPack_MatrixOpGetGMS.hpp.
|
inline |
Frees the DMatrixSlice
view.
Definition at line 170 of file AbstractLinAlgPack_MatrixOpGetGMS.hpp.
|
inline |
Returns a constant view of the DMatrixSlice
view.
Definition at line 176 of file AbstractLinAlgPack_MatrixOpGetGMS.hpp.