CMSIS-DSP  
CMSIS DSP Software Library
 
Loading...
Searching...
No Matches
Number datatypes

Content

 DSP extension specific number definitions
 
 Helium specific number definitions
 
 Scalar number definitions
 

Files

file  complex_double.hpp
 
file  double.hpp
 
file  complex_float.hpp
 
file  float.hpp
 
file  complex_half.hpp
 
file  half.hpp
 
file  q31.hpp
 
file  complex_q31.hpp
 
file  q15.hpp
 
file  complex_q15.hpp
 
file  q7.hpp
 
file  complex_q7.hpp
 
file  num_features.hpp
 
file  q7.hpp
 
file  q15.hpp
 
file  num_features.hpp
 
file  float.hpp
 
file  complex_float.hpp
 
file  half.hpp
 
file  complex_half.hpp
 
file  q31.hpp
 
file  complex_q31.hpp
 
file  q15.hpp
 
file  complex_q15.hpp
 
file  q7.hpp
 
file  group.hpp
 

Namespaces

namespace  arm_cmsis_dsp::inner
 

Data Structures

struct  number_traits< T >
 Properties of a scalar datatype. More...
 
struct  ComplexVector< T >
 Vector containing complex values and not just real values but with same number of lanes than a normal float vector. More...
 
struct  HalfComplexVector< T >
 Vector of complex but with half lanes compared to real (2 complex) More...
 
struct  Dual< T >
 Dual representation for complex. More...
 
struct  vector_traits< T, arch, typename >
 Properties of a vector datatype linked to a scalar datatype. More...
 
struct  vctpq< T, typename >
 Predicate (only defined for vector architectures) More...
 
struct  number_traits< T >
 Properties of a scalar datatype. More...
 
struct  ComplexVector< T >
 Vector containing complex values and not just real values but with same number of lanes than a normal float vector. More...
 
struct  HalfComplexVector< T >
 Vector of complex but with half lanes compared to real (2 complex) More...
 
struct  Dual< T >
 Dual representation for complex. More...
 

Description

Number datatypes expressing different properties of the numbers according to the architecture.

Those definitions are used to write architecture independents algorithms.


Data Structure Documentation

◆ arm_cmsis_dsp::number_traits

struct arm_cmsis_dsp::number_traits
template<typename T>
struct arm_cmsis_dsp::number_traits< T >

Properties of a scalar datatype.

Template Parameters
Tdatatype

Needs to contain two static bool : is_float and is_fixed

Needs to contain a static function one returning the value 1 for this datatype (used to write some datatype generic algorithms)

◆ arm_cmsis_dsp::ComplexVector

struct arm_cmsis_dsp::ComplexVector
template<typename T>
struct arm_cmsis_dsp::ComplexVector< T >

Vector containing complex values and not just real values but with same number of lanes than a normal float vector.

Template Parameters
TDatatype of vector

◆ arm_cmsis_dsp::HalfComplexVector

struct arm_cmsis_dsp::HalfComplexVector
template<typename T>
struct arm_cmsis_dsp::HalfComplexVector< T >

Vector of complex but with half lanes compared to real (2 complex)

Template Parameters
TData type of vector

◆ arm_cmsis_dsp::Dual

struct arm_cmsis_dsp::Dual
template<typename T>
struct arm_cmsis_dsp::Dual< T >

Dual representation for complex.

Template Parameters
TScalar datatype for complex

◆ arm_cmsis_dsp::vector_traits

struct arm_cmsis_dsp::vector_traits
template<typename T, typename arch = Scalar, typename = void>
struct arm_cmsis_dsp::vector_traits< T, arch, typename >

Properties of a vector datatype linked to a scalar datatype.

Template Parameters
TType of the scalar
archArchitecture. It is defined by the architecture selection code and should never be set by the user.

Public Types

typedef T type
 Scalar datatype.
 
typedef T storage_type
 Storage type (for instance for Q15 scalar the storage is int16_t)
 

Static Public Attributes

static constexpr bool has_vector = false
 True if scalar type has a related vector type.
 
static constexpr bool is_float = false
 True if scalar type is a float (half, float or double)
 
static constexpr bool is_fixed = false
 True if scalar type is fixed point.
 

◆ arm_cmsis_dsp::inner::vctpq

struct arm_cmsis_dsp::inner::vctpq
template<typename T, typename = void>
struct arm_cmsis_dsp::inner::vctpq< T, typename >

Predicate (only defined for vector architectures)

Template Parameters
Tscalar data type
Parameters
vNumber of loops
Returns
Predicate for the given architecture

◆ arm_cmsis_dsp::arm_cmsis_dsp::number_traits

struct arm_cmsis_dsp::arm_cmsis_dsp::number_traits
template<typename T>
struct arm_cmsis_dsp::arm_cmsis_dsp::number_traits< T >

Properties of a scalar datatype.

Template Parameters
Tdatatype

Needs to contain two static bool : is_float and is_fixed

Needs to contain a static function one returning the value 1 for this datatype (used to write some datatype generic algorithms)

◆ arm_cmsis_dsp::arm_cmsis_dsp::ComplexVector

struct arm_cmsis_dsp::arm_cmsis_dsp::ComplexVector
template<typename T>
struct arm_cmsis_dsp::arm_cmsis_dsp::ComplexVector< T >

Vector containing complex values and not just real values but with same number of lanes than a normal float vector.

Template Parameters
TDatatype of vector

◆ arm_cmsis_dsp::arm_cmsis_dsp::HalfComplexVector

struct arm_cmsis_dsp::arm_cmsis_dsp::HalfComplexVector
template<typename T>
struct arm_cmsis_dsp::arm_cmsis_dsp::HalfComplexVector< T >

Vector of complex but with half lanes compared to real (2 complex)

Template Parameters
TData type of vector

◆ arm_cmsis_dsp::arm_cmsis_dsp::Dual

struct arm_cmsis_dsp::arm_cmsis_dsp::Dual
template<typename T>
struct arm_cmsis_dsp::arm_cmsis_dsp::Dual< T >

Dual representation for complex.

Template Parameters
TScalar datatype for complex