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

#include <VectorAdapter.hpp>

+ Inheritance diagram for CDPL::Math::VectorQuaternionAdapter< V >:

Public Types

typedef V VectorType
 
typedef V::ValueType ValueType
 
typedef V::ConstReference ConstReference
 
typedef std::conditional< std::is_const< V >::value, typename V::ConstReference, typename V::Reference >::type Reference
 
typedef std::conditional< std::is_const< V >::value, typename V::ConstClosureType, typename V::ClosureType >::type VectorClosureType
 
typedef const SelfType ConstClosureType
 
typedef SelfType ClosureType
 
- Public Types inherited from CDPL::Math::QuaternionExpression< VectorQuaternionAdapter< V > >
typedef VectorQuaternionAdapter< V > ExpressionType
 
- Public Types inherited from CDPL::Math::Expression< E >
typedef E ExpressionType
 

Public Member Functions

 VectorQuaternionAdapter (VectorType &v)
 
Reference getC1 ()
 
Reference getC2 ()
 
Reference getC3 ()
 
Reference getC4 ()
 
ConstReference getC1 () const
 
ConstReference getC2 () const
 
ConstReference getC3 () const
 
ConstReference getC4 () const
 
VectorClosureTypegetData ()
 
const VectorClosureTypegetData () const
 
VectorQuaternionAdapteroperator= (const VectorQuaternionAdapter &a)
 
template<typename E >
VectorQuaternionAdapteroperator= (const QuaternionExpression< E > &e)
 
template<typename T >
std::enable_if< IsScalar< T >::value, VectorQuaternionAdapter >::type & operator= (const T &t)
 
template<typename E >
VectorQuaternionAdapteroperator+= (const QuaternionExpression< E > &e)
 
template<typename T >
std::enable_if< IsScalar< T >::value, VectorQuaternionAdapter >::type & operator+= (const T &t)
 
template<typename E >
VectorQuaternionAdapteroperator-= (const QuaternionExpression< E > &e)
 
template<typename T >
std::enable_if< IsScalar< T >::value, VectorQuaternionAdapter >::type & operator-= (const T &t)
 
template<typename E >
VectorQuaternionAdapteroperator*= (const QuaternionExpression< E > &e)
 
template<typename T >
std::enable_if< IsScalar< T >::value, VectorQuaternionAdapter >::type & operator*= (const T &t)
 
template<typename E >
VectorQuaternionAdapteroperator/= (const QuaternionExpression< E > &e)
 
template<typename T >
std::enable_if< IsScalar< T >::value, VectorQuaternionAdapter >::type & operator/= (const T &t)
 
template<typename E >
VectorQuaternionAdapterassign (const QuaternionExpression< E > &e)
 
template<typename E >
VectorQuaternionAdapterplusAssign (const QuaternionExpression< E > &e)
 
template<typename E >
VectorQuaternionAdapterminusAssign (const QuaternionExpression< E > &e)
 
void swap (VectorQuaternionAdapter &a)
 
void set (const ValueType &c1=ValueType(), const ValueType &c2=ValueType(), const ValueType &c3=ValueType(), const ValueType &c4=ValueType())
 
- Public Member Functions inherited from CDPL::Math::QuaternionExpression< VectorQuaternionAdapter< V > >
const ExpressionTypeoperator() () const
 
ExpressionTypeoperator() ()
 

Friends

void swap (VectorQuaternionAdapter &a1, VectorQuaternionAdapter &a2)
 

Additional Inherited Members

- Protected Member Functions inherited from CDPL::Math::QuaternionExpression< VectorQuaternionAdapter< V > >
 QuaternionExpression ()
 
 ~QuaternionExpression ()
 
- Protected Member Functions inherited from CDPL::Math::Expression< E >
 Expression ()
 
 ~Expression ()
 

Member Typedef Documentation

◆ VectorType

template<typename V >
typedef V CDPL::Math::VectorQuaternionAdapter< V >::VectorType

◆ ValueType

template<typename V >
typedef V::ValueType CDPL::Math::VectorQuaternionAdapter< V >::ValueType

◆ ConstReference

template<typename V >
typedef V::ConstReference CDPL::Math::VectorQuaternionAdapter< V >::ConstReference

◆ Reference

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

◆ VectorClosureType

template<typename V >
typedef std::conditional<std::is_const<V>::value, typename V::ConstClosureType, typename V::ClosureType>::type CDPL::Math::VectorQuaternionAdapter< V >::VectorClosureType

◆ ConstClosureType

template<typename V >
typedef const SelfType CDPL::Math::VectorQuaternionAdapter< V >::ConstClosureType

◆ ClosureType

template<typename V >
typedef SelfType CDPL::Math::VectorQuaternionAdapter< V >::ClosureType

Constructor & Destructor Documentation

◆ VectorQuaternionAdapter()

template<typename V >
CDPL::Math::VectorQuaternionAdapter< V >::VectorQuaternionAdapter ( VectorType v)
inlineexplicit

Member Function Documentation

◆ getC1() [1/2]

template<typename V >
Reference CDPL::Math::VectorQuaternionAdapter< V >::getC1 ( )
inline

◆ getC2() [1/2]

template<typename V >
Reference CDPL::Math::VectorQuaternionAdapter< V >::getC2 ( )
inline

◆ getC3() [1/2]

template<typename V >
Reference CDPL::Math::VectorQuaternionAdapter< V >::getC3 ( )
inline

◆ getC4() [1/2]

template<typename V >
Reference CDPL::Math::VectorQuaternionAdapter< V >::getC4 ( )
inline

◆ getC1() [2/2]

template<typename V >
ConstReference CDPL::Math::VectorQuaternionAdapter< V >::getC1 ( ) const
inline

◆ getC2() [2/2]

template<typename V >
ConstReference CDPL::Math::VectorQuaternionAdapter< V >::getC2 ( ) const
inline

◆ getC3() [2/2]

template<typename V >
ConstReference CDPL::Math::VectorQuaternionAdapter< V >::getC3 ( ) const
inline

◆ getC4() [2/2]

template<typename V >
ConstReference CDPL::Math::VectorQuaternionAdapter< V >::getC4 ( ) const
inline

◆ getData() [1/2]

template<typename V >
VectorClosureType& CDPL::Math::VectorQuaternionAdapter< V >::getData ( )
inline

◆ getData() [2/2]

template<typename V >
const VectorClosureType& CDPL::Math::VectorQuaternionAdapter< V >::getData ( ) const
inline

◆ operator=() [1/3]

template<typename V >
VectorQuaternionAdapter& CDPL::Math::VectorQuaternionAdapter< V >::operator= ( const VectorQuaternionAdapter< V > &  a)
inline

◆ operator=() [2/3]

template<typename V >
template<typename E >
VectorQuaternionAdapter& CDPL::Math::VectorQuaternionAdapter< V >::operator= ( const QuaternionExpression< E > &  e)
inline

◆ operator=() [3/3]

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

◆ operator+=() [1/2]

template<typename V >
template<typename E >
VectorQuaternionAdapter& CDPL::Math::VectorQuaternionAdapter< V >::operator+= ( const QuaternionExpression< E > &  e)
inline

◆ operator+=() [2/2]

template<typename V >
template<typename T >
std::enable_if<IsScalar<T>::value, VectorQuaternionAdapter>::type& CDPL::Math::VectorQuaternionAdapter< V >::operator+= ( const T &  t)
inline

◆ operator-=() [1/2]

template<typename V >
template<typename E >
VectorQuaternionAdapter& CDPL::Math::VectorQuaternionAdapter< V >::operator-= ( const QuaternionExpression< E > &  e)
inline

◆ operator-=() [2/2]

template<typename V >
template<typename T >
std::enable_if<IsScalar<T>::value, VectorQuaternionAdapter>::type& CDPL::Math::VectorQuaternionAdapter< V >::operator-= ( const T &  t)
inline

◆ operator*=() [1/2]

template<typename V >
template<typename E >
VectorQuaternionAdapter& CDPL::Math::VectorQuaternionAdapter< V >::operator*= ( const QuaternionExpression< E > &  e)
inline

◆ operator*=() [2/2]

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

◆ operator/=() [1/2]

template<typename V >
template<typename E >
VectorQuaternionAdapter& CDPL::Math::VectorQuaternionAdapter< V >::operator/= ( const QuaternionExpression< E > &  e)
inline

◆ operator/=() [2/2]

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

◆ assign()

template<typename V >
template<typename E >
VectorQuaternionAdapter& CDPL::Math::VectorQuaternionAdapter< V >::assign ( const QuaternionExpression< E > &  e)
inline

◆ plusAssign()

template<typename V >
template<typename E >
VectorQuaternionAdapter& CDPL::Math::VectorQuaternionAdapter< V >::plusAssign ( const QuaternionExpression< E > &  e)
inline

◆ minusAssign()

template<typename V >
template<typename E >
VectorQuaternionAdapter& CDPL::Math::VectorQuaternionAdapter< V >::minusAssign ( const QuaternionExpression< E > &  e)
inline

◆ swap()

template<typename V >
void CDPL::Math::VectorQuaternionAdapter< V >::swap ( VectorQuaternionAdapter< V > &  a)
inline

◆ set()

template<typename V >
void CDPL::Math::VectorQuaternionAdapter< V >::set ( const ValueType c1 = ValueType(),
const ValueType c2 = ValueType(),
const ValueType c3 = ValueType(),
const ValueType c4 = ValueType() 
)
inline

Friends And Related Function Documentation

◆ swap

template<typename V >
void swap ( VectorQuaternionAdapter< V > &  a1,
VectorQuaternionAdapter< V > &  a2 
)
friend

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