VectorView_< ELT > Class Template Reference

This class is identical to a Vector_; it is used only to manage the C++ rules for when copy constructors are called by introducing a separate type to prevent certain allowed optimizations from occuring when we don't want them. More...

#include <BigMatrix.h>

Inheritance diagram for VectorView_< ELT >:
VectorBase< ELT > MatrixBase< ELT >

List of all members.

Public Member Functions

 VectorView_ (MatrixHelperRep< S > *hrep)
 VectorView_ (const VectorView_ &v)
VectorView_operator= (const VectorView_ &v)
 Copy assignment is deep copy but behavior depends on type of lhs: if view, rhs must match.
 VectorView_ (const MatrixHelper< S > &h)
 VectorView_ (MatrixHelper< S > &h)
VectorView_operator= (const Base &b)
VectorView_operator= (const ELT &v)
 Fill current allocation with copies of element.
template<class EE >
VectorView_operator= (const VectorBase< EE > &m)
template<class EE >
VectorView_operator+= (const VectorBase< EE > &m)
template<class EE >
VectorView_operator-= (const VectorBase< EE > &m)
VectorView_operator*= (const StdNumber &t)
VectorView_operator/= (const StdNumber &t)
VectorView_operator+= (const ELT &b)
VectorView_operator-= (const ELT &b)

Detailed Description

template<class ELT>
class SimTK::VectorView_< ELT >

This class is identical to a Vector_; it is used only to manage the C++ rules for when copy constructors are called by introducing a separate type to prevent certain allowed optimizations from occuring when we don't want them.

Despite the name, this may be an owner if a Vector_ is recast to a VectorView_. However, there are no owner constructors for VectorView_.


Constructor & Destructor Documentation

VectorView_ ( MatrixHelperRep< S > *  hrep  )  [inline, explicit]
VectorView_ ( const VectorView_< ELT > &  v  )  [inline]
VectorView_ ( const MatrixHelper< S > &  h  )  [inline, explicit]
VectorView_ ( MatrixHelper< S > &  h  )  [inline, explicit]

Member Function Documentation

VectorView_& operator*= ( const StdNumber &  t  )  [inline]

Reimplemented from VectorBase< ELT >.

References VectorBase< ELT >::operator*=().

VectorView_& operator+= ( const ELT &  b  )  [inline]
VectorView_& operator+= ( const VectorBase< EE > &  m  )  [inline]
VectorView_& operator-= ( const ELT &  b  )  [inline]
VectorView_& operator-= ( const VectorBase< EE > &  m  )  [inline]
VectorView_& operator/= ( const StdNumber &  t  )  [inline]

Reimplemented from VectorBase< ELT >.

References VectorBase< ELT >::operator/=().

VectorView_& operator= ( const VectorBase< EE > &  m  )  [inline]
VectorView_& operator= ( const ELT &  t  )  [inline]

Fill current allocation with copies of element.

Note that this is not the same behavior as assignment for Matrices, where only the diagonal is set (and everything else is set to zero.)

Reimplemented from VectorBase< ELT >.

References VectorBase< ELT >::operator=().

VectorView_& operator= ( const Base b  )  [inline]
VectorView_& operator= ( const VectorView_< ELT > &  b  )  [inline]

Copy assignment is deep copy but behavior depends on type of lhs: if view, rhs must match.

If owner, we reallocate and copy rhs.

Reimplemented from VectorBase< ELT >.

References VectorBase< ELT >::operator=().


The documentation for this class was generated from the following file:

Generated on Wed Dec 30 11:05:21 2009 for SimTKcore by  doxygen 1.6.1