AbstractLinAlgPack: C++ Interfaces For Vectors, Matrices And Related Linear Algebra Objects Version of the Day
Public Member Functions
AbstractLinAlgPack::MatrixDenseSymEncap Class Reference

Helper class type that simplifies the usage of the MatrixSymOpGetGMSSym interface for clients. More...

#include <AbstractLinAlgPack_MatrixSymOpGetGMSSym.hpp>

List of all members.

Public Member Functions

 MatrixDenseSymEncap (const MatrixSymOpGetGMSSym &mat_get)
 Construct a DenseLinAlgPack::DMatrixSliceSym view from a MatrixSymOpGetGMSSym object.
 MatrixDenseSymEncap (const MatrixSymOp &mat)
 Construct a DenseLinAlgPack::DMatrixSliceSym view from a MatrixSymOp object.
 ~MatrixDenseSymEncap ()
 Frees the DenseLinAlgPack::DMatrixSliceSym view.
const
DenseLinAlgPack::DMatrixSliceSym 
operator() () const
 Returns a constant view of the DenseLinAlgPack::DMatrixSliceSym view.

Detailed Description

Helper class type that simplifies the usage of the MatrixSymOpGetGMSSym interface for clients.

This takes care of worrying about if the MatrixSymOpGetGMSSym 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 call another function one could write a function like:

 void call_func(const MatrixSymOpGetGMSSym& mat_in ) {
     func( MatrixDenseSymEncap(mat_in)() );
 }

In the above code, if the underlying MatrixSymOpGetGMSSym object does not have to perform any dynamic memory allocations and copy in the method MatrixSymOpGetGMSSym::get_sym_gms_view() then the above code will only have a constant time overhead.

Definition at line 125 of file AbstractLinAlgPack_MatrixSymOpGetGMSSym.hpp.


Constructor & Destructor Documentation

AbstractLinAlgPack::MatrixDenseSymEncap::MatrixDenseSymEncap ( const MatrixSymOpGetGMSSym mat_get) [inline]
AbstractLinAlgPack::MatrixDenseSymEncap::MatrixDenseSymEncap ( const MatrixSymOp mat) [inline]

Construct a DenseLinAlgPack::DMatrixSliceSym view from a MatrixSymOp object.

If dynamic_cast<const MatrixSymOpGetGMSSym*>(&mat) == NULL then a ??? exception is thrown.

Definition at line 164 of file AbstractLinAlgPack_MatrixSymOpGetGMSSym.hpp.

AbstractLinAlgPack::MatrixDenseSymEncap::~MatrixDenseSymEncap ( ) [inline]

Member Function Documentation

const DenseLinAlgPack::DMatrixSliceSym AbstractLinAlgPack::MatrixDenseSymEncap::operator() ( ) const [inline]

Returns a constant view of the DenseLinAlgPack::DMatrixSliceSym view.

Definition at line 176 of file AbstractLinAlgPack_MatrixSymOpGetGMSSym.hpp.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends