MOOCHO (Single Doxygen Collection)
Version of the Day
|
Helper class type that simplifies the usage of the MatrixSymOpGetGMSSymMutable
interface for clients.
More...
#include <AbstractLinAlgPack_MatrixSymOpGetGMSSymMutable.hpp>
Public Member Functions | |
MatrixDenseSymMutableEncap (MatrixSymOpGetGMSSymMutable *mat_get) | |
Construct a DenseLinAlgPack::DMatrixSliceSym view from a MatrixSymOpGetGMSSymMutable object. More... | |
MatrixDenseSymMutableEncap (MatrixSymOp *mat) | |
Construct a DenseLinAlgPack::DMatrixSliceSym view from a MatrixSymOp object. More... | |
~MatrixDenseSymMutableEncap () | |
Frees the DenseLinAlgPack::DMatrixSliceSym view and commits the changes. More... | |
DenseLinAlgPack::DMatrixSliceSym | operator() () |
Returns a non-const view of the DenseLinAlgPack::DMatrixSliceSym view. More... | |
const DenseLinAlgPack::DMatrixSliceSym | operator() () const |
Returns a const view of the DenseLinAlgPack::DMatrixSliceSym view. More... | |
Private Member Functions | |
MatrixDenseSymMutableEncap () | |
MatrixDenseSymMutableEncap (const MatrixDenseSymMutableEncap &) | |
MatrixDenseSymMutableEncap & | operator= (const MatrixDenseSymMutableEncap &) |
Private Attributes | |
MatrixSymOpGetGMSSymMutable * | mat_get_ |
DenseLinAlgPack::DMatrixSliceSym | sym_gms_view_ |
Helper class type that simplifies the usage of the MatrixSymOpGetGMSSymMutable
interface for clients.
This takes care of worrying about if the MatrixSymOpGetGMSSymMutable
interface is supported or not and remembering to free the DenseLinAlgPack::DMatrixSliceSym
view properly.
This class is only to be used on the stack as an automatic variable. For example, to extract a DenseLinAlgPack::DMatrixSliceSym
view of an abstract vector and use it to set the matrix to a scalar one could write a function like:
In the above code, if the underlying MatrixSymOpGetGMSSymMutable
object does not have to perform any dynamic memory allocations and copy in the method MatrixSymOpGetGMSSymMutable::get_sym_gms_view()
then the above code will only have a constant time overhead.
Definition at line 123 of file AbstractLinAlgPack_MatrixSymOpGetGMSSymMutable.hpp.
|
inline |
Construct a DenseLinAlgPack::DMatrixSliceSym
view from a MatrixSymOpGetGMSSymMutable
object.
Definition at line 158 of file AbstractLinAlgPack_MatrixSymOpGetGMSSymMutable.hpp.
|
inline |
Construct a DenseLinAlgPack::DMatrixSliceSym
view from a MatrixSymOp
object.
If dynamic_cast<MatrixSymOpGetGMSSymMutable*>(mat) == NULL
then a ??? exception is thrown.
Definition at line 164 of file AbstractLinAlgPack_MatrixSymOpGetGMSSymMutable.hpp.
|
inline |
Frees the DenseLinAlgPack::DMatrixSliceSym
view and commits the changes.
Definition at line 170 of file AbstractLinAlgPack_MatrixSymOpGetGMSSymMutable.hpp.
|
private |
|
private |
|
inline |
Returns a non-const view of the DenseLinAlgPack::DMatrixSliceSym
view.
Definition at line 176 of file AbstractLinAlgPack_MatrixSymOpGetGMSSymMutable.hpp.
|
inline |
Returns a const view of the DenseLinAlgPack::DMatrixSliceSym
view.
Definition at line 182 of file AbstractLinAlgPack_MatrixSymOpGetGMSSymMutable.hpp.
|
private |
|
private |
Definition at line 144 of file AbstractLinAlgPack_MatrixSymOpGetGMSSymMutable.hpp.
|
private |
Definition at line 145 of file AbstractLinAlgPack_MatrixSymOpGetGMSSymMutable.hpp.