Data Structures | |
| struct | FloatType< E > |
| Check if datatype are compatible and accept mixed arithmetic complex with real. More... | |
| struct | _Expr< T > |
| Expression template. More... | |
| struct | _Binary< LHS, RHS, DerivedOp > |
| Expression for binary operator. More... | |
| struct | _Unary< LHS, DerivedOp > |
| Expression for unary operator. More... | |
| struct | _UnaryOperator< Scalar, Derived > |
| Unary operator. More... | |
| struct | _BinaryOperator< ScalarLHS, ScalarRHS, Derived > |
| Unary operator. More... | |
| struct | _AddOp< ScalarLHS, ScalarRHS > |
| Add operator. More... | |
| struct | _SubOp< ScalarLHS, ScalarRHS > |
| Sub operator. More... | |
| struct | _MulOp< ScalarLHS, ScalarRHS > |
| Mul operator. More... | |
| struct | _NegOp< Scalar > |
| Neg operator. More... | |
| struct | _NoOp< Scalar > |
| No operator. More... | |
| struct | _ConjugateOp< Scalar > |
| Conjugate operator. More... | |
Functions | |
| template<typename DA > | |
| constexpr bool | has_vector_inst () |
| Determines if vector datatype supports vector instruction on a current architecture. | |
| template<typename DA > | |
| constexpr bool | has_predicate () |
| Check if predicated instructions are supported. | |
| template<typename DA > | |
| constexpr bool | is_mixed () |
| Check if expression contains a mix of complex / real operations. | |
| template<typename A , typename B > | |
| constexpr bool | same_nb_lanes () |
| Check same number of lanes is used. | |
| template<typename A > | |
| constexpr bool | is_complex () |
| Check if vector / matrix contains complex numbers. | |
| template<typename A > | |
| constexpr bool | is_float () |
| Determines if datatype is a float (double, float, complex ...). | |
| template<typename A > | |
| constexpr bool | is_fixed () |
| Determines if datatype is fixed (Q31,Q15, complex<Q15> ...). | |
| template<typename DA > | |
| constexpr bool | has_predicate_inst () |
| Determines if datatype has predicated loop for current architecture. | |
| template<typename DA > | |
| constexpr bool | is_scalar () |
| Determines if scalar datatype (not vector, vectorview, matrix, matrixview) | |
| template<typename DA > | |
| constexpr bool | must_use_matrix_idx () |
| Check if datatype can only be used as a matrix (no vector addressing) | |
| template<typename DA , typename DB > | |
| constexpr bool | vector_idx_pair () |
| Check if both datatype have vector indexing and are same scalar datatype. | |
| template<typename DA > | |
| constexpr bool | is_only_vector () |
| Check if has vector indexing. | |
| template<typename DA , typename DB > | |
| constexpr bool | must_use_matrix_idx_pair () |
| Check if datatypes have same scalar datatype and no vector indexing. | |
| template<typename DA , typename DB > | |
| constexpr vector_length_t | static_length () |
| Static length. | |
| template<typename DA , typename DB > | |
| constexpr bool | same_static_length () |
| Check compatibility of length. | |
| template<typename VA , typename VB , typename std::enable_if< vector_idx_pair< VA, VB >() &&is_only_vector< VA >() &&is_only_vector< VB >() &&(!IsDynamic< VA >::value||!IsDynamic< VB >::value), bool >::type = true> | |
| DotResult< DotFieldResult< VA, VB > > | dot (const VA &a, const VB &b) |
| Dot product. | |
| template<typename VA , typename VB , typename std::enable_if< vector_idx_pair< VA, VB >() &&(!IsDynamic< VA >::value||!IsDynamic< VB >::value), bool >::type = true> | |
| void | swap (VA &&a, VB &&b) |
| Swap vectors. | |
| struct arm_cmsis_dsp::FloatType |
Check if datatype are compatible and accept mixed arithmetic complex with real.
| A | LHS datatype |
| B | RHS datatype |
| struct arm_cmsis_dsp::_Expr |
Expression template.
| T | Datatype representing the expression |
Public Member Functions | |
| T & | derived () |
| Derived datatype. | |
| T const & | derived () const |
| Derived datatype. | |
| Scalar const | operator[] (const index_t i) const |
| Vector indexing in the expression. | |
| Scalar const | operator() (const index_t r, const index_t c) const |
| Matrix indexing. | |
| Vector const | vector_op (const index_t i) const |
| Vector operation at given index. | |
| Vector const | vector_op_tail (const index_t i, const vector_length_t remaining) const |
| Vector operation at index with loop predicate. | |
| Vector const | matrix_op (const index_t r, const index_t c) const |
| Matrix operation at index. | |
| Vector const | matrix_op_tail (const index_t r, const index_t c, const vector_length_t remaining) const |
| Matrix operation at index with tail predication. | |
| vector_length_t | length () const |
| Length of result. | |
| vector_length_t | rows () const |
| Number of rows for result. | |
| vector_length_t | columns () const |
| Number of columns for result. | |
|
inline |
Number of columns for result.
|
inline |
Derived datatype.
|
inline |
Derived datatype.
|
inline |
Length of result.
Matrix operation at index.
| [in] | r | row index |
| [in] | c | column index |
|
inline |
Matrix operation at index with tail predication.
| [in] | r | row index |
| [in] | c | column index |
| [in] | remaining | Remaining elements in the loop |
|
inline |
|
inline |
Number of rows for result.
|
inline |
|
inline |
| struct arm_cmsis_dsp::_Binary |
Expression for binary operator.
| LHS | Left hand side datatype |
| RHS | Right hand side datatype |
| DerivedOp | Operator for the binary operation |
Additional Inherited Members | |
Public Member Functions inherited from _Expr< _Binary< LHS, RHS, DerivedOp > > | |
| _Binary< LHS, RHS, DerivedOp > & | derived () |
| Derived datatype. | |
| _Binary< LHS, RHS, DerivedOp > const & | derived () const |
| Derived datatype. | |
| Scalar const | operator[] (const index_t i) const |
| Vector indexing in the expression. | |
| Scalar const | operator() (const index_t r, const index_t c) const |
| Matrix indexing. | |
| Vector const | vector_op (const index_t i) const |
| Vector operation at given index. | |
| Vector const | vector_op_tail (const index_t i, const vector_length_t remaining) const |
| Vector operation at index with loop predicate. | |
| Vector const | matrix_op (const index_t r, const index_t c) const |
| Matrix operation at index. | |
| Vector const | matrix_op_tail (const index_t r, const index_t c, const vector_length_t remaining) const |
| Matrix operation at index with tail predication. | |
| vector_length_t | length () const |
| Length of result. | |
| vector_length_t | rows () const |
| Number of rows for result. | |
| vector_length_t | columns () const |
| Number of columns for result. | |
| struct arm_cmsis_dsp::_Unary |
Expression for unary operator.
| LHS | Left hand side datatype |
| DerivedOp | Operator for the binary operation |
Additional Inherited Members | |
Public Member Functions inherited from _Expr< _Unary< LHS, DerivedOp > > | |
| _Unary< LHS, DerivedOp > & | derived () |
| Derived datatype. | |
| _Unary< LHS, DerivedOp > const & | derived () const |
| Derived datatype. | |
| Scalar const | operator[] (const index_t i) const |
| Vector indexing in the expression. | |
| Scalar const | operator() (const index_t r, const index_t c) const |
| Matrix indexing. | |
| Vector const | vector_op (const index_t i) const |
| Vector operation at given index. | |
| Vector const | vector_op_tail (const index_t i, const vector_length_t remaining) const |
| Vector operation at index with loop predicate. | |
| Vector const | matrix_op (const index_t r, const index_t c) const |
| Matrix operation at index. | |
| Vector const | matrix_op_tail (const index_t r, const index_t c, const vector_length_t remaining) const |
| Matrix operation at index with tail predication. | |
| vector_length_t | length () const |
| Length of result. | |
| vector_length_t | rows () const |
| Number of rows for result. | |
| vector_length_t | columns () const |
| Number of columns for result. | |
| struct _UnaryOperator |
Unary operator.
| Scalar | Datatype for scalar |
| Derived | Datatype representing the operator expression |
| struct _BinaryOperator |
Unary operator.
| Scalar | Datatype for scalar |
| Derived | Datatype representing the operator expression |
| struct _AddOp |
Add operator.
| Scalar | Datatype for scalar |
| struct _SubOp |
Sub operator.
| Scalar | Datatype for scalar |
| struct _MulOp |
Mul operator.
| Scalar | Datatype for scalar |
| struct _NegOp |
Neg operator.
| Scalar | Datatype for scalar |
| struct _NoOp |
No operator.
| Scalar | Datatype for scalar |
| struct _ConjugateOp |
Conjugate operator.
| Scalar | Datatype for scalar |
|
inline |
Dot product.
| VA | Left hand side vector datatype |
| VB | Right hand side vector datatype |
| a | left hand side vector |
| b | right hand side vector |
The vector can be vector, vector views or expressions.
|
constexpr |
Check if predicated instructions are supported.
| DA | The datatype |
|
constexpr |
Determines if datatype has predicated loop for current architecture.
| DA | Datatype |
|
constexpr |
Determines if vector datatype supports vector instruction on a current architecture.
| DA | Datatype |
|
constexpr |
Check if vector / matrix contains complex numbers.
| A | Datatype |
|
constexpr |
Determines if datatype is fixed (Q31,Q15, complex<Q15> ...).
| A | The datatype |
|
constexpr |
Determines if datatype is a float (double, float, complex ...).
| A | Datatype |
|
constexpr |
Check if expression contains a mix of complex / real operations.
| DA | Expression datatype |
|
constexpr |
Check if has vector indexing.
| DA | Datatype |
|
constexpr |
Determines if scalar datatype (not vector, vectorview, matrix, matrixview)
| DA | { description } |
|
constexpr |
Check if datatype can only be used as a matrix (no vector addressing)
| DA | Datatype |
|
constexpr |
Check if datatypes have same scalar datatype and no vector indexing.
| DA | First datatype |
| DB | Second datatype |
|
constexpr |
Check same number of lanes is used.
| A | Datatype |
| B | Datatype |
|
constexpr |
Check compatibility of length.
| DA | First datatype |
| DB | Second datatype |
|
constexpr |
Static length.
| DA | First datatype |
| DB | Second datatype |
|
inline |
Swap vectors.
| VA | Left hand side vector datatype |
| VB | Right hand side vector datatype |
| a | left hand side vector |
| b | right hand side vector |
The vector can be vector, vector views or expressions.
The content of vector is swapped.
|
constexpr |
Check if both datatype have vector indexing and are same scalar datatype.
| DA | First datatype |
| DB | Second datatype |