Chemical Data Processing Library C++ API - Version 1.2.0
Public Types | Public Member Functions | Friends | List of all members
CDPL::Math::MatrixRow< M > Class Template Reference

#include <MatrixProxy.hpp>

+ Inheritance diagram for CDPL::Math::MatrixRow< M >:

Public Types

typedef M MatrixType
 
typedef M::SizeType SizeType
 
typedef M::DifferenceType DifferenceType
 
typedef M::ValueType ValueType
 
typedef M::ConstReference ConstReference
 
typedef std::conditional< std::is_const< M >::value, typename M::ConstReference, typename M::Reference >::type Reference
 
typedef std::conditional< std::is_const< M >::value, typename M::ConstClosureType, typename M::ClosureType >::type MatrixClosureType
 
typedef const SelfType ConstClosureType
 
typedef SelfType ClosureType
 
- Public Types inherited from CDPL::Math::VectorExpression< MatrixRow< M > >
typedef MatrixRow< M > ExpressionType
 
- Public Types inherited from CDPL::Math::Expression< E >
typedef E ExpressionType
 

Public Member Functions

 MatrixRow (MatrixType &m, SizeType i)
 
Reference operator() (SizeType i)
 
ConstReference operator() (SizeType i) const
 
Reference operator[] (SizeType i)
 
ConstReference operator[] (SizeType i) const
 
SizeType getIndex () const
 
SizeType getSize () const
 
bool isEmpty () const
 
MatrixClosureTypegetData ()
 
const MatrixClosureTypegetData () const
 
MatrixRowoperator= (const MatrixRow &r)
 
template<typename E >
MatrixRowoperator= (const VectorExpression< E > &e)
 
template<typename E >
MatrixRowoperator+= (const VectorExpression< E > &e)
 
template<typename E >
MatrixRowoperator-= (const VectorExpression< E > &e)
 
template<typename T >
std::enable_if< IsScalar< T >::value, MatrixRow >::type & operator*= (const T &t)
 
template<typename T >
std::enable_if< IsScalar< T >::value, MatrixRow >::type & operator/= (const T &t)
 
template<typename E >
MatrixRowassign (const VectorExpression< E > &e)
 
template<typename E >
MatrixRowplusAssign (const VectorExpression< E > &e)
 
template<typename E >
MatrixRowminusAssign (const VectorExpression< E > &e)
 
void swap (MatrixRow &r)
 
- Public Member Functions inherited from CDPL::Math::VectorExpression< MatrixRow< M > >
const ExpressionTypeoperator() () const
 
ExpressionTypeoperator() ()
 

Friends

void swap (MatrixRow &r1, MatrixRow &r2)
 

Additional Inherited Members

- Protected Member Functions inherited from CDPL::Math::VectorExpression< MatrixRow< M > >
 VectorExpression ()
 
 ~VectorExpression ()
 
- Protected Member Functions inherited from CDPL::Math::Expression< E >
 Expression ()
 
 ~Expression ()
 

Member Typedef Documentation

◆ MatrixType

template<typename M >
typedef M CDPL::Math::MatrixRow< M >::MatrixType

◆ SizeType

template<typename M >
typedef M::SizeType CDPL::Math::MatrixRow< M >::SizeType

◆ DifferenceType

template<typename M >
typedef M::DifferenceType CDPL::Math::MatrixRow< M >::DifferenceType

◆ ValueType

template<typename M >
typedef M::ValueType CDPL::Math::MatrixRow< M >::ValueType

◆ ConstReference

template<typename M >
typedef M::ConstReference CDPL::Math::MatrixRow< M >::ConstReference

◆ Reference

template<typename M >
typedef std::conditional<std::is_const<M>::value, typename M::ConstReference, typename M::Reference>::type CDPL::Math::MatrixRow< M >::Reference

◆ MatrixClosureType

template<typename M >
typedef std::conditional<std::is_const<M>::value, typename M::ConstClosureType, typename M::ClosureType>::type CDPL::Math::MatrixRow< M >::MatrixClosureType

◆ ConstClosureType

template<typename M >
typedef const SelfType CDPL::Math::MatrixRow< M >::ConstClosureType

◆ ClosureType

template<typename M >
typedef SelfType CDPL::Math::MatrixRow< M >::ClosureType

Constructor & Destructor Documentation

◆ MatrixRow()

template<typename M >
CDPL::Math::MatrixRow< M >::MatrixRow ( MatrixType m,
SizeType  i 
)
inline

Member Function Documentation

◆ operator()() [1/2]

template<typename M >
Reference CDPL::Math::MatrixRow< M >::operator() ( SizeType  i)
inline

◆ operator()() [2/2]

template<typename M >
ConstReference CDPL::Math::MatrixRow< M >::operator() ( SizeType  i) const
inline

◆ operator[]() [1/2]

template<typename M >
Reference CDPL::Math::MatrixRow< M >::operator[] ( SizeType  i)
inline

◆ operator[]() [2/2]

template<typename M >
ConstReference CDPL::Math::MatrixRow< M >::operator[] ( SizeType  i) const
inline

◆ getIndex()

template<typename M >
SizeType CDPL::Math::MatrixRow< M >::getIndex ( ) const
inline

◆ getSize()

template<typename M >
SizeType CDPL::Math::MatrixRow< M >::getSize ( ) const
inline

◆ isEmpty()

template<typename M >
bool CDPL::Math::MatrixRow< M >::isEmpty ( ) const
inline

◆ getData() [1/2]

template<typename M >
MatrixClosureType& CDPL::Math::MatrixRow< M >::getData ( )
inline

◆ getData() [2/2]

template<typename M >
const MatrixClosureType& CDPL::Math::MatrixRow< M >::getData ( ) const
inline

◆ operator=() [1/2]

template<typename M >
MatrixRow& CDPL::Math::MatrixRow< M >::operator= ( const MatrixRow< M > &  r)
inline

◆ operator=() [2/2]

template<typename M >
template<typename E >
MatrixRow& CDPL::Math::MatrixRow< M >::operator= ( const VectorExpression< E > &  e)
inline

◆ operator+=()

template<typename M >
template<typename E >
MatrixRow& CDPL::Math::MatrixRow< M >::operator+= ( const VectorExpression< E > &  e)
inline

◆ operator-=()

template<typename M >
template<typename E >
MatrixRow& CDPL::Math::MatrixRow< M >::operator-= ( const VectorExpression< E > &  e)
inline

◆ operator*=()

template<typename M >
template<typename T >
std::enable_if<IsScalar<T>::value, MatrixRow>::type& CDPL::Math::MatrixRow< M >::operator*= ( const T &  t)
inline

◆ operator/=()

template<typename M >
template<typename T >
std::enable_if<IsScalar<T>::value, MatrixRow>::type& CDPL::Math::MatrixRow< M >::operator/= ( const T &  t)
inline

◆ assign()

template<typename M >
template<typename E >
MatrixRow& CDPL::Math::MatrixRow< M >::assign ( const VectorExpression< E > &  e)
inline

◆ plusAssign()

template<typename M >
template<typename E >
MatrixRow& CDPL::Math::MatrixRow< M >::plusAssign ( const VectorExpression< E > &  e)
inline

◆ minusAssign()

template<typename M >
template<typename E >
MatrixRow& CDPL::Math::MatrixRow< M >::minusAssign ( const VectorExpression< E > &  e)
inline

◆ swap()

template<typename M >
void CDPL::Math::MatrixRow< M >::swap ( MatrixRow< M > &  r)
inline

Friends And Related Function Documentation

◆ swap

template<typename M >
void swap ( MatrixRow< M > &  r1,
MatrixRow< M > &  r2 
)
friend

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