27 #ifndef CDPL_MATH_EXPRESSION_HPP
28 #define CDPL_MATH_EXPRESSION_HPP
106 template <
typename E>
146 template <
typename E>
186 template <
typename E>
223 template <
typename C>
260 template <
typename C>
297 template <
typename C>
334 template <
typename C>
CRTP base class of all numeric expression types in the Math namespace.
Definition: Expression.hpp:43
E ExpressionType
The derived expression type.
Definition: Expression.hpp:49
~Expression()
Definition: Expression.hpp:53
Expression()
Definition: Expression.hpp:52
Refinement of Math::GridExpression marking the derived type as a concrete (writable) grid container.
Definition: Expression.hpp:336
ContainerType & operator()()
Returns a reference to the derived grid container class instance.
Definition: Expression.hpp:357
~GridContainer()
Definition: Expression.hpp:364
const ContainerType & operator()() const
Returns a const reference to the derived grid container class instance.
Definition: Expression.hpp:348
C ContainerType
The derived grid container type.
Definition: Expression.hpp:342
GridContainer()
Definition: Expression.hpp:363
CRTP base class of all grid expression types.
Definition: Expression.hpp:188
E ExpressionType
The derived grid expression type.
Definition: Expression.hpp:194
ExpressionType & operator()()
Returns a reference to the derived grid expression class instance.
Definition: Expression.hpp:209
GridExpression()
Definition: Expression.hpp:215
~GridExpression()
Definition: Expression.hpp:216
const ExpressionType & operator()() const
Returns a const reference to the derived grid expression class instance.
Definition: Expression.hpp:200
Refinement of Math::MatrixExpression marking the derived type as a concrete (writable) matrix contain...
Definition: Expression.hpp:262
const ContainerType & operator()() const
Returns a const reference to the derived matrix container class instance.
Definition: Expression.hpp:274
MatrixContainer()
Definition: Expression.hpp:289
C ContainerType
The derived matrix container type.
Definition: Expression.hpp:268
~MatrixContainer()
Definition: Expression.hpp:290
ContainerType & operator()()
Returns a reference to the derived matrix container class instance.
Definition: Expression.hpp:283
CRTP base class of all matrix expression types.
Definition: Expression.hpp:108
E ExpressionType
The derived matrix expression type.
Definition: Expression.hpp:114
const ExpressionType & operator()() const
Returns a const reference to the derived matrix expression class instance.
Definition: Expression.hpp:120
MatrixExpression()
Definition: Expression.hpp:135
ExpressionType & operator()()
Returns a reference to the derived matrix expression class instance.
Definition: Expression.hpp:129
~MatrixExpression()
Definition: Expression.hpp:136
Refinement of Math::QuaternionExpression marking the derived type as a concrete (writable) quaternion...
Definition: Expression.hpp:299
ContainerType & operator()()
Returns a reference to the derived quaternion container class instance.
Definition: Expression.hpp:320
const ContainerType & operator()() const
Returns a const reference to the derived quaternion container class instance.
Definition: Expression.hpp:311
QuaternionContainer()
Definition: Expression.hpp:326
C ContainerType
The derived quaternion container type.
Definition: Expression.hpp:305
~QuaternionContainer()
Definition: Expression.hpp:327
CRTP base class of all quaternion expression types.
Definition: Expression.hpp:148
QuaternionExpression()
Definition: Expression.hpp:175
ExpressionType & operator()()
Returns a reference to the derived quaternion expression class instance.
Definition: Expression.hpp:169
~QuaternionExpression()
Definition: Expression.hpp:176
const ExpressionType & operator()() const
Returns a const reference to the derived quaternion expression class instance.
Definition: Expression.hpp:160
E ExpressionType
The derived quaternion expression type.
Definition: Expression.hpp:154
Refinement of Math::VectorExpression marking the derived type as a concrete (writable) vector contain...
Definition: Expression.hpp:225
~VectorContainer()
Definition: Expression.hpp:253
C ContainerType
The derived vector container type.
Definition: Expression.hpp:231
ContainerType & operator()()
Returns a reference to the derived vector container class instance.
Definition: Expression.hpp:246
const ContainerType & operator()() const
Returns a const reference to the derived vector container class instance.
Definition: Expression.hpp:237
VectorContainer()
Definition: Expression.hpp:252
CRTP base class of all vector expression types.
Definition: Expression.hpp:68
const ExpressionType & operator()() const
Returns a const reference to the derived vector expression class instance.
Definition: Expression.hpp:80
~VectorExpression()
Definition: Expression.hpp:96
ExpressionType & operator()()
Returns a reference to the derived vector expression class instance.
Definition: Expression.hpp:89
E ExpressionType
The derived vector expression type.
Definition: Expression.hpp:74
VectorExpression()
Definition: Expression.hpp:95
constexpr unsigned int C
Specifies Carbon.
Definition: AtomType.hpp:92
constexpr unsigned int E
Specifies that the stereocenter has E configuration.
Definition: CIPDescriptor.hpp:96
The namespace of the Chemical Data Processing Library.