CAPD DynSys Library  5.2.0
capd::vectalg::RowVector< Scalar, cols > Class Template Reference

RowVector class realizes a vector without its own container. He is just a reference to a part of other object (i.e. Matrix of Vector) with his own container. More...

#include <capd/vectalg/RowVector.h>

Classes

struct  rebind
 

Public Types

typedef Scalar ScalarType
 
typedef ScalarTypeiterator
 
typedef RowVector< Scalar, cols > VectorType
 
typedef RowVector ContainerType
 
typedef __size_type size_type
 
typedef __difference_type difference_type
 

Public Member Functions

 RowVector (const Scalar *pointer, size_type dim)
 
RowVectoroperator= (const RowVector &)
 
RowVectoroperator= (const Vector< Scalar, cols > &)
 
RowVectoroperator+= (const RowVector &)
 
RowVectoroperator+= (const Vector< Scalar, cols > &)
 
RowVectoroperator-= (const RowVector &)
 
RowVectoroperator-= (const Vector< Scalar, cols > &)
 
RowVectoroperator*= (const Scalar &)
 
RowVectoroperator/= (const Scalar &)
 
 operator Vector< Scalar, cols > () const
 
Scalaroperator[] (size_type col)
 
const Scalaroperator[] (size_type col) const
 
Scalar euclNorm () const
 
bool normalize ()
 
void clear ()
 
size_type dimension () const
 
iterator begin ()
 
iterator end ()
 
const_iterator begin () const
 
const_iterator end () const
 
void assertEqualSize (const RowVector &c) const
 

Public Attributes

const typedef ScalarTypeconst_iterator
 

Protected Attributes

Scalarm_pointer
 
size_type m_dim
 

Detailed Description

template<typename Scalar, __size_type cols>
class capd::vectalg::RowVector< Scalar, cols >

RowVector class realizes a vector without its own container. He is just a reference to a part of other object (i.e. Matrix of Vector) with his own container.

It is assumed that data fill continuous part of a memory Compare with ColumnVector

Member Typedef Documentation

◆ ContainerType

template<typename Scalar , __size_type cols>
typedef RowVector capd::vectalg::RowVector< Scalar, cols >::ContainerType

◆ difference_type

template<typename Scalar , __size_type cols>
typedef __difference_type capd::vectalg::RowVector< Scalar, cols >::difference_type

◆ iterator

template<typename Scalar , __size_type cols>
typedef ScalarType* capd::vectalg::RowVector< Scalar, cols >::iterator

◆ ScalarType

template<typename Scalar , __size_type cols>
typedef Scalar capd::vectalg::RowVector< Scalar, cols >::ScalarType

◆ size_type

template<typename Scalar , __size_type cols>
typedef __size_type capd::vectalg::RowVector< Scalar, cols >::size_type

◆ VectorType

template<typename Scalar , __size_type cols>
typedef RowVector<Scalar,cols> capd::vectalg::RowVector< Scalar, cols >::VectorType

Constructor & Destructor Documentation

◆ RowVector()

template<typename Scalar , __size_type cols>
capd::vectalg::RowVector< Scalar, cols >::RowVector ( const Scalar pointer,
size_type  dim 
)
inline

Member Function Documentation

◆ assertEqualSize()

template<typename Scalar , __size_type cols>
void capd::vectalg::RowVector< Scalar, cols >::assertEqualSize ( const RowVector< Scalar, cols > &  c) const
inline

◆ begin() [1/2]

template<typename Scalar , __size_type cols>
RowVector< Scalar, cols >::const_iterator capd::vectalg::RowVector< Scalar, cols >::begin
inline

◆ begin() [2/2]

template<typename Scalar , __size_type cols>
const_iterator capd::vectalg::RowVector< Scalar, cols >::begin ( ) const

◆ clear()

template<typename Scalar , __size_type cols>
void capd::vectalg::RowVector< Scalar, cols >::clear
inline

◆ dimension()

template<typename Scalar , __size_type cols>
RowVector< Scalar, cols >::size_type capd::vectalg::RowVector< Scalar, cols >::dimension
inline

◆ end() [1/2]

template<typename Scalar , __size_type cols>
RowVector< Scalar, cols >::const_iterator capd::vectalg::RowVector< Scalar, cols >::end
inline

◆ end() [2/2]

template<typename Scalar , __size_type cols>
const_iterator capd::vectalg::RowVector< Scalar, cols >::end ( ) const

◆ euclNorm()

template<typename Scalar , __size_type cols>
Scalar capd::vectalg::RowVector< Scalar, cols >::euclNorm
inline

◆ normalize()

template<typename Scalar , __size_type cols>
bool capd::vectalg::RowVector< Scalar, cols >::normalize
inline

◆ operator Vector< Scalar, cols >()

template<typename Scalar , __size_type cols>
capd::vectalg::RowVector< Scalar, cols >::operator Vector< Scalar, cols >

◆ operator*=()

template<typename Scalar , __size_type cols>
RowVector< Scalar, cols > & capd::vectalg::RowVector< Scalar, cols >::operator*= ( const Scalar s)
inline

◆ operator+=() [1/2]

template<typename Scalar , __size_type cols>
RowVector< Scalar, cols > & capd::vectalg::RowVector< Scalar, cols >::operator+= ( const RowVector< Scalar, cols > &  v)
inline

◆ operator+=() [2/2]

template<typename Scalar , __size_type cols>
RowVector< Scalar, cols > & capd::vectalg::RowVector< Scalar, cols >::operator+= ( const Vector< Scalar, cols > &  v)
inline

◆ operator-=() [1/2]

template<typename Scalar , __size_type cols>
RowVector< Scalar, cols > & capd::vectalg::RowVector< Scalar, cols >::operator-= ( const RowVector< Scalar, cols > &  v)
inline

◆ operator-=() [2/2]

template<typename Scalar , __size_type cols>
RowVector< Scalar, cols > & capd::vectalg::RowVector< Scalar, cols >::operator-= ( const Vector< Scalar, cols > &  v)
inline

◆ operator/=()

template<typename Scalar , __size_type cols>
RowVector< Scalar, cols > & capd::vectalg::RowVector< Scalar, cols >::operator/= ( const Scalar s)
inline

◆ operator=() [1/2]

template<typename Scalar , __size_type cols>
RowVector< Scalar, cols > & capd::vectalg::RowVector< Scalar, cols >::operator= ( const RowVector< Scalar, cols > &  v)
inline

◆ operator=() [2/2]

template<typename Scalar , __size_type cols>
RowVector< Scalar, cols > & capd::vectalg::RowVector< Scalar, cols >::operator= ( const Vector< Scalar, cols > &  v)
inline

◆ operator[]() [1/2]

template<typename Scalar , __size_type cols>
Scalar & capd::vectalg::RowVector< Scalar, cols >::operator[] ( size_type  col)
inline

◆ operator[]() [2/2]

template<typename Scalar , __size_type cols>
const Scalar & capd::vectalg::RowVector< Scalar, cols >::operator[] ( size_type  col) const
inline

Member Data Documentation

◆ const_iterator

template<typename Scalar , __size_type cols>
const typedef ScalarType* capd::vectalg::RowVector< Scalar, cols >::const_iterator

◆ m_dim

template<typename Scalar , __size_type cols>
size_type capd::vectalg::RowVector< Scalar, cols >::m_dim
protected

◆ m_pointer

template<typename Scalar , __size_type cols>
Scalar* capd::vectalg::RowVector< Scalar, cols >::m_pointer
protected