|
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. | |
| MatrixDenseEncap (const MatrixOp &mat) | |
Construct a DMatrixSlice view from a MatrixOp object. | |
| ~MatrixDenseEncap () | |
Frees the DMatrixSlice view. | |
| const DMatrixSlice | operator() () const |
Returns a constant view of the DMatrixSlice view. | |
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:
void copy(const MatrixOpGetGMS& mat_in, GenMatrixClass* gms_out ) { MatrixDenseEncap gms_in(mat_in); *gms_out = gms_in(); }
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.
| AbstractLinAlgPack::MatrixDenseEncap::MatrixDenseEncap | ( | const MatrixOpGetGMS & | mat_get | ) | [inline] |
Construct a DMatrixSlice view from a MatrixOpGetGMS object.
Definition at line 158 of file AbstractLinAlgPack_MatrixOpGetGMS.hpp.
| AbstractLinAlgPack::MatrixDenseEncap::MatrixDenseEncap | ( | const MatrixOp & | mat | ) | [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.
Frees the DMatrixSlice view.
Definition at line 170 of file AbstractLinAlgPack_MatrixOpGetGMS.hpp.
| const DMatrixSlice AbstractLinAlgPack::MatrixDenseEncap::operator() | ( | ) | const [inline] |
Returns a constant view of the DMatrixSlice view.
Definition at line 176 of file AbstractLinAlgPack_MatrixOpGetGMS.hpp.
1.7.6.1