![]() |
Chemical Data Processing Library C++ API - Version 1.4.0
|
Pure-real quaternion \( q = c_1 + 0i + 0j + 0k \) that stores only the real component. More...
#include <Quaternion.hpp>
Inheritance diagram for CDPL::Math::RealQuaternion< T >:Public Types | |
| typedef T | ValueType |
| The scalar component value type. More... | |
| typedef const T & | Reference |
Reference type (always a const reference — only the real component is mutable, via assignment). More... | |
| typedef const T & | ConstReference |
| Constant reference type to the real component. More... | |
| typedef QuaternionReference< SelfType > | ClosureType |
| Closure type used when this quaternion appears inside another expression. More... | |
| typedef const QuaternionReference< const SelfType > | ConstClosureType |
| Constant closure type used when this quaternion appears inside another expression. More... | |
| typedef Quaternion< T > | QuaternionTemporaryType |
| Concrete temporary quaternion type used by expression-template machinery (a general Math::Quaternion<T>). More... | |
Public Types inherited from CDPL::Math::QuaternionContainer< RealQuaternion< T > > | |
| typedef RealQuaternion< T > | ContainerType |
| The derived quaternion container type. More... | |
Public Types inherited from CDPL::Math::QuaternionExpression< E > | |
| typedef E | ExpressionType |
| The derived quaternion expression type. More... | |
Public Types inherited from CDPL::Math::Expression< E > | |
| typedef E | ExpressionType |
| The derived expression type (made available to expression-template machinery). More... | |
Public Member Functions | |
| RealQuaternion () | |
| Constructs a zero-valued real quaternion (C1 = 0). More... | |
| RealQuaternion (const ValueType &r) | |
| Constructs the real quaternion with the supplied real component. More... | |
| template<typename T1 > | |
| RealQuaternion (const RealQuaternion< T1 > &q) | |
| Constructs a copy of the real quaternion q (possibly converting the component type). More... | |
| ConstReference | getC1 () const |
Returns a const reference to the real component C1. More... | |
| ConstReference | getC2 () const |
Returns a const reference to the imaginary component C2 (always zero for a real quaternion). More... | |
| ConstReference | getC3 () const |
Returns a const reference to the imaginary component C3 (always zero for a real quaternion). More... | |
| ConstReference | getC4 () const |
Returns a const reference to the imaginary component C4 (always zero for a real quaternion). More... | |
| operator ValueType () const | |
| Implicit conversion to the underlying scalar value (the real component). More... | |
| RealQuaternion & | operator= (const RealQuaternion &q) |
| Copy-assigns the real component from q. More... | |
| template<typename T1 > | |
| RealQuaternion & | operator= (const RealQuaternion< T1 > &q) |
| Assigns the real component from q (possibly converting the component type). More... | |
| template<typename T1 > | |
| std::enable_if< IsScalar< T1 >::value, RealQuaternion >::type & | operator= (const T1 &t) |
| Assigns the scalar t to the real component. More... | |
| template<typename T1 > | |
| RealQuaternion & | operator+= (const RealQuaternion< T1 > &q) |
| Adds the real component of q to this quaternion's real component. More... | |
| template<typename T1 > | |
| std::enable_if< IsScalar< T1 >::value, RealQuaternion >::type & | operator+= (const T1 &t) |
| Adds the scalar t to the real component. More... | |
| template<typename T1 > | |
| RealQuaternion & | operator-= (const RealQuaternion< T1 > &q) |
| Subtracts the real component of q from this quaternion's real component. More... | |
| template<typename T1 > | |
| std::enable_if< IsScalar< T1 >::value, RealQuaternion >::type & | operator-= (const T1 &t) |
| Subtracts the scalar t from the real component. More... | |
| template<typename T1 > | |
| RealQuaternion & | operator*= (const RealQuaternion< T1 > &q) |
| Multiplies the real component by the real component of q. More... | |
| template<typename T1 > | |
| std::enable_if< IsScalar< T1 >::value, RealQuaternion >::type & | operator*= (const T1 &t) |
| Multiplies the real component by the scalar t. More... | |
| template<typename T1 > | |
| RealQuaternion & | operator/= (const RealQuaternion< T1 > &q) |
| Divides the real component by the real component of q. More... | |
| template<typename T1 > | |
| std::enable_if< IsScalar< T1 >::value, RealQuaternion >::type & | operator/= (const T1 &t) |
| Divides the real component by the scalar t. More... | |
| template<typename T1 > | |
| RealQuaternion & | assign (const RealQuaternion< T1 > &q) |
| Assigns the real component from q without intermediate temporary. More... | |
| template<typename T1 > | |
| RealQuaternion & | plusAssign (const RealQuaternion< T1 > &q) |
| Adds the real component of q to this quaternion's real component without intermediate temporary. More... | |
| template<typename T1 > | |
| RealQuaternion & | minusAssign (const RealQuaternion< T1 > &q) |
| Subtracts the real component of q from this quaternion's real component without intermediate temporary. More... | |
| void | swap (RealQuaternion &q) |
| Swaps the real component value with q. More... | |
Public Member Functions inherited from CDPL::Math::QuaternionContainer< RealQuaternion< T > > | |
| const ContainerType & | operator() () const |
Returns a const reference to the derived quaternion container. More... | |
| ContainerType & | operator() () |
| Returns a reference to the derived quaternion container. More... | |
Public Member Functions inherited from CDPL::Math::QuaternionExpression< E > | |
| const ExpressionType & | operator() () const |
Returns a const reference to the derived quaternion expression. More... | |
| ExpressionType & | operator() () |
| Returns a reference to the derived quaternion expression. More... | |
Friends | |
| void | swap (RealQuaternion &q1, RealQuaternion &q2) |
| ADL-enabled free-function form of swap(). More... | |
Additional Inherited Members | |
Protected Member Functions inherited from CDPL::Math::QuaternionContainer< RealQuaternion< T > > | |
| QuaternionContainer () | |
| ~QuaternionContainer () | |
Protected Member Functions inherited from CDPL::Math::QuaternionExpression< E > | |
| QuaternionExpression () | |
| ~QuaternionExpression () | |
Protected Member Functions inherited from CDPL::Math::Expression< E > | |
| Expression () | |
| ~Expression () | |
Pure-real quaternion \( q = c_1 + 0i + 0j + 0k \) that stores only the real component.
| T | The scalar component value type. |
| typedef T CDPL::Math::RealQuaternion< T >::ValueType |
The scalar component value type.
| typedef const T& CDPL::Math::RealQuaternion< T >::Reference |
Reference type (always a const reference — only the real component is mutable, via assignment).
| typedef const T& CDPL::Math::RealQuaternion< T >::ConstReference |
Constant reference type to the real component.
| typedef QuaternionReference<SelfType> CDPL::Math::RealQuaternion< T >::ClosureType |
Closure type used when this quaternion appears inside another expression.
| typedef const QuaternionReference<const SelfType> CDPL::Math::RealQuaternion< T >::ConstClosureType |
Constant closure type used when this quaternion appears inside another expression.
| typedef Quaternion<T> CDPL::Math::RealQuaternion< T >::QuaternionTemporaryType |
Concrete temporary quaternion type used by expression-template machinery (a general Math::Quaternion<T>).
|
inline |
Constructs a zero-valued real quaternion (C1 = 0).
|
inline |
Constructs the real quaternion with the supplied real component.
| r | The real component value. |
|
inline |
Constructs a copy of the real quaternion q (possibly converting the component type).
| T1 | The source component type. |
| q | The real quaternion to copy. |
|
inline |
Returns a const reference to the real component C1.
const reference to C1.
|
inline |
Returns a const reference to the imaginary component C2 (always zero for a real quaternion).
const reference to the zero element.
|
inline |
Returns a const reference to the imaginary component C3 (always zero for a real quaternion).
const reference to the zero element.
|
inline |
Returns a const reference to the imaginary component C4 (always zero for a real quaternion).
const reference to the zero element.
|
inline |
Implicit conversion to the underlying scalar value (the real component).
|
inline |
Copy-assigns the real component from q.
| q | The source real quaternion. |
|
inline |
Assigns the real component from q (possibly converting the component type).
| T1 | The source component type. |
| q | The source real quaternion. |
|
inline |
Assigns the scalar t to the real component.
| T1 | The scalar type. |
| t | The scalar value. |
|
inline |
Adds the real component of q to this quaternion's real component.
| T1 | The source component type. |
| q | The source real quaternion. |
|
inline |
Adds the scalar t to the real component.
| T1 | The scalar type. |
| t | The scalar addend. |
|
inline |
Subtracts the real component of q from this quaternion's real component.
| T1 | The source component type. |
| q | The source real quaternion. |
|
inline |
Subtracts the scalar t from the real component.
| T1 | The scalar type. |
| t | The scalar subtrahend. |
|
inline |
Multiplies the real component by the real component of q.
| T1 | The source component type. |
| q | The source real quaternion. |
|
inline |
Multiplies the real component by the scalar t.
| T1 | The scalar type. |
| t | The scalar multiplier. |
|
inline |
Divides the real component by the real component of q.
| T1 | The source component type. |
| q | The source real quaternion. |
|
inline |
Divides the real component by the scalar t.
| T1 | The scalar type. |
| t | The scalar divisor. |
|
inline |
Assigns the real component from q without intermediate temporary.
| T1 | The source component type. |
| q | The source real quaternion. |
|
inline |
Adds the real component of q to this quaternion's real component without intermediate temporary.
| T1 | The source component type. |
| q | The source real quaternion. |
|
inline |
Subtracts the real component of q from this quaternion's real component without intermediate temporary.
| T1 | The source component type. |
| q | The source real quaternion. |
|
inline |
Swaps the real component value with q.
| q | The real quaternion to swap with. |
|
friend |
ADL-enabled free-function form of swap().
| q1 | The first real quaternion. |
| q2 | The second real quaternion. |