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

#include <QuaternionAdapter.hpp>

+ Inheritance diagram for CDPL::Math::QuaternionVectorAdapter< Q >:

Public Types

typedef Q QuaternionType
 
typedef std::size_t SizeType
 
typedef std::ptrdiff_t DifferenceType
 
typedef Q::ValueType ValueType
 
typedef Q::ConstReference ConstReference
 
typedef std::conditional< std::is_const< Q >::value, typename Q::ConstReference, typename Q::Reference >::type Reference
 
typedef std::conditional< std::is_const< Q >::value, typename Q::ConstClosureType, typename Q::ClosureType >::type QuaternionClosureType
 
typedef const SelfType ConstClosureType
 
typedef SelfType ClosureType
 
- Public Types inherited from CDPL::Math::VectorExpression< QuaternionVectorAdapter< Q > >
typedef QuaternionVectorAdapter< Q > ExpressionType
 
- Public Types inherited from CDPL::Math::Expression< E >
typedef E ExpressionType
 

Public Member Functions

 QuaternionVectorAdapter (QuaternionType &q)
 
Reference operator() (SizeType i)
 
ConstReference operator() (SizeType i) const
 
Reference operator[] (SizeType i)
 
ConstReference operator[] (SizeType i) const
 
SizeType getSize () const
 
bool isEmpty () const
 
QuaternionClosureTypegetData ()
 
const QuaternionClosureTypegetData () const
 
QuaternionVectorAdapteroperator= (const QuaternionVectorAdapter &a)
 
template<typename E >
QuaternionVectorAdapteroperator= (const VectorExpression< E > &e)
 
template<typename E >
QuaternionVectorAdapteroperator+= (const VectorExpression< E > &e)
 
template<typename E >
QuaternionVectorAdapteroperator-= (const VectorExpression< E > &e)
 
template<typename T >
std::enable_if< IsScalar< T >::value, QuaternionVectorAdapter >::type & operator*= (const T &t)
 
template<typename T >
std::enable_if< IsScalar< T >::value, QuaternionVectorAdapter >::type & operator/= (const T &t)
 
template<typename E >
QuaternionVectorAdapterassign (const VectorExpression< E > &e)
 
template<typename E >
QuaternionVectorAdapterplusAssign (const VectorExpression< E > &e)
 
template<typename E >
QuaternionVectorAdapterminusAssign (const VectorExpression< E > &e)
 
void swap (QuaternionVectorAdapter &a)
 
- Public Member Functions inherited from CDPL::Math::VectorExpression< QuaternionVectorAdapter< Q > >
const ExpressionTypeoperator() () const
 
ExpressionTypeoperator() ()
 

Friends

void swap (QuaternionVectorAdapter &a1, QuaternionVectorAdapter &a2)
 

Additional Inherited Members

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

Member Typedef Documentation

◆ QuaternionType

template<typename Q >
typedef Q CDPL::Math::QuaternionVectorAdapter< Q >::QuaternionType

◆ SizeType

template<typename Q >
typedef std::size_t CDPL::Math::QuaternionVectorAdapter< Q >::SizeType

◆ DifferenceType

template<typename Q >
typedef std::ptrdiff_t CDPL::Math::QuaternionVectorAdapter< Q >::DifferenceType

◆ ValueType

template<typename Q >
typedef Q::ValueType CDPL::Math::QuaternionVectorAdapter< Q >::ValueType

◆ ConstReference

template<typename Q >
typedef Q::ConstReference CDPL::Math::QuaternionVectorAdapter< Q >::ConstReference

◆ Reference

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

◆ QuaternionClosureType

template<typename Q >
typedef std::conditional<std::is_const<Q>::value, typename Q::ConstClosureType, typename Q::ClosureType>::type CDPL::Math::QuaternionVectorAdapter< Q >::QuaternionClosureType

◆ ConstClosureType

template<typename Q >
typedef const SelfType CDPL::Math::QuaternionVectorAdapter< Q >::ConstClosureType

◆ ClosureType

template<typename Q >
typedef SelfType CDPL::Math::QuaternionVectorAdapter< Q >::ClosureType

Constructor & Destructor Documentation

◆ QuaternionVectorAdapter()

template<typename Q >
CDPL::Math::QuaternionVectorAdapter< Q >::QuaternionVectorAdapter ( QuaternionType q)
inlineexplicit

Member Function Documentation

◆ operator()() [1/2]

template<typename Q >
Reference CDPL::Math::QuaternionVectorAdapter< Q >::operator() ( SizeType  i)
inline

◆ operator()() [2/2]

template<typename Q >
ConstReference CDPL::Math::QuaternionVectorAdapter< Q >::operator() ( SizeType  i) const
inline

◆ operator[]() [1/2]

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

◆ operator[]() [2/2]

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

◆ getSize()

template<typename Q >
SizeType CDPL::Math::QuaternionVectorAdapter< Q >::getSize ( ) const
inline

◆ isEmpty()

template<typename Q >
bool CDPL::Math::QuaternionVectorAdapter< Q >::isEmpty ( ) const
inline

◆ getData() [1/2]

template<typename Q >
QuaternionClosureType& CDPL::Math::QuaternionVectorAdapter< Q >::getData ( )
inline

◆ getData() [2/2]

template<typename Q >
const QuaternionClosureType& CDPL::Math::QuaternionVectorAdapter< Q >::getData ( ) const
inline

◆ operator=() [1/2]

template<typename Q >
QuaternionVectorAdapter& CDPL::Math::QuaternionVectorAdapter< Q >::operator= ( const QuaternionVectorAdapter< Q > &  a)
inline

◆ operator=() [2/2]

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

◆ operator+=()

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

◆ operator-=()

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

◆ operator*=()

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

◆ operator/=()

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

◆ assign()

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

◆ plusAssign()

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

◆ minusAssign()

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

◆ swap()

template<typename Q >
void CDPL::Math::QuaternionVectorAdapter< Q >::swap ( QuaternionVectorAdapter< Q > &  a)
inline

Friends And Related Function Documentation

◆ swap

template<typename Q >
void swap ( QuaternionVectorAdapter< Q > &  a1,
QuaternionVectorAdapter< Q > &  a2 
)
friend

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