Chemical Data Processing Library C++ API - Version 1.4.0
Public Types | Public Member Functions | List of all members
CDPL::Math::QuaternionUnary2< E, F > Class Template Reference

Expression-template node applying a per-component functor F to a quaternion expression E, where F exposes four separate apply methods (applyC1 / applyC2 / applyC3 / applyC4) operating on the whole source expression. More...

#include <QuaternionExpression.hpp>

+ Inheritance diagram for CDPL::Math::QuaternionUnary2< E, F >:

Public Types

typedef F::ResultType ValueType
 The element value type of the expression (the functor's result type). More...
 
typedef const ValueType ConstReference
 Constant reference type to a component value. More...
 
typedef const ValueType Reference
 Mutable reference type (degrades to const for expression-template results). More...
 
typedef const SelfType ConstClosureType
 Constant closure type used when this expression appears inside another expression. More...
 
typedef SelfType ClosureType
 Closure type used when this expression appears inside another expression. More...
 
- Public Types inherited from CDPL::Math::QuaternionExpression< QuaternionUnary2< E, F > >
typedef QuaternionUnary2< E, F > 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

 QuaternionUnary2 (const ExpressionType &e)
 Constructs the expression-template node wrapping e. More...
 
ConstReference getC1 () const
 Returns the result of applying the functor's applyC1 method to the wrapped expression. More...
 
ConstReference getC2 () const
 Returns the result of applying the functor's applyC2 method to the wrapped expression. More...
 
ConstReference getC3 () const
 Returns the result of applying the functor's applyC3 method to the wrapped expression. More...
 
ConstReference getC4 () const
 Returns the result of applying the functor's applyC4 method to the wrapped expression. More...
 
- Public Member Functions inherited from CDPL::Math::QuaternionExpression< QuaternionUnary2< E, F > >
const ExpressionTypeoperator() () const
 Returns a const reference to the derived quaternion expression. More...
 
ExpressionTypeoperator() ()
 Returns a reference to the derived quaternion expression. More...
 

Additional Inherited Members

- Protected Member Functions inherited from CDPL::Math::QuaternionExpression< QuaternionUnary2< E, F > >
 QuaternionExpression ()
 
 ~QuaternionExpression ()
 
- Protected Member Functions inherited from CDPL::Math::Expression< E >
 Expression ()
 
 ~Expression ()
 

Detailed Description

template<typename E, typename F>
class CDPL::Math::QuaternionUnary2< E, F >

Expression-template node applying a per-component functor F to a quaternion expression E, where F exposes four separate apply methods (applyC1 / applyC2 / applyC3 / applyC4) operating on the whole source expression.

Template Parameters
EThe wrapped quaternion expression type.
FThe per-component functor type.

Member Typedef Documentation

◆ ValueType

template<typename E , typename F >
typedef F::ResultType CDPL::Math::QuaternionUnary2< E, F >::ValueType

The element value type of the expression (the functor's result type).

◆ ConstReference

template<typename E , typename F >
typedef const ValueType CDPL::Math::QuaternionUnary2< E, F >::ConstReference

Constant reference type to a component value.

◆ Reference

template<typename E , typename F >
typedef const ValueType CDPL::Math::QuaternionUnary2< E, F >::Reference

Mutable reference type (degrades to const for expression-template results).

◆ ConstClosureType

template<typename E , typename F >
typedef const SelfType CDPL::Math::QuaternionUnary2< E, F >::ConstClosureType

Constant closure type used when this expression appears inside another expression.

◆ ClosureType

template<typename E , typename F >
typedef SelfType CDPL::Math::QuaternionUnary2< E, F >::ClosureType

Closure type used when this expression appears inside another expression.

Constructor & Destructor Documentation

◆ QuaternionUnary2()

template<typename E , typename F >
CDPL::Math::QuaternionUnary2< E, F >::QuaternionUnary2 ( const ExpressionType e)
inline

Constructs the expression-template node wrapping e.

Parameters
eThe quaternion expression to wrap.

Member Function Documentation

◆ getC1()

template<typename E , typename F >
ConstReference CDPL::Math::QuaternionUnary2< E, F >::getC1 ( ) const
inline

Returns the result of applying the functor's applyC1 method to the wrapped expression.

Returns
The computed C1 component.

◆ getC2()

template<typename E , typename F >
ConstReference CDPL::Math::QuaternionUnary2< E, F >::getC2 ( ) const
inline

Returns the result of applying the functor's applyC2 method to the wrapped expression.

Returns
The computed C2 component.

◆ getC3()

template<typename E , typename F >
ConstReference CDPL::Math::QuaternionUnary2< E, F >::getC3 ( ) const
inline

Returns the result of applying the functor's applyC3 method to the wrapped expression.

Returns
The computed C3 component.

◆ getC4()

template<typename E , typename F >
ConstReference CDPL::Math::QuaternionUnary2< E, F >::getC4 ( ) const
inline

Returns the result of applying the functor's applyC4 method to the wrapped expression.

Returns
The computed C4 component.

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