CMSIS-DSP  
CMSIS DSP Software Library
support_functions.h File Reference

Data Structures

struct  arm_sort_instance_f32
 Instance structure for the sorting algorithms. More...
 
struct  arm_merge_sort_instance_f32
 Instance structure for the sorting algorithms. More...
 

Enumerations

enum  arm_sort_alg {
  ARM_SORT_BITONIC = 0 ,
  ARM_SORT_BUBBLE = 1 ,
  ARM_SORT_HEAP = 2 ,
  ARM_SORT_INSERTION = 3 ,
  ARM_SORT_QUICK = 4 ,
  ARM_SORT_SELECTION = 5
}
 Struct for specifying sorting algorithm. More...
 
enum  arm_sort_dir {
  ARM_SORT_DESCENDING = 0 ,
  ARM_SORT_ASCENDING = 1
}
 Struct for specifying sorting algorithm. More...
 

Functions

void arm_f64_to_float (const float64_t *pSrc, float32_t *pDst, uint32_t blockSize)
 Converts the elements of the 64 bit floating-point vector to floating-point vector. More...
 
void arm_f64_to_q31 (const float64_t *pSrc, q31_t *pDst, uint32_t blockSize)
 Converts the elements of the 64 bit floating-point vector to Q31 vector. More...
 
void arm_f64_to_q15 (const float64_t *pSrc, q15_t *pDst, uint32_t blockSize)
 Converts the elements of the 64 bit floating-point vector to Q15 vector. More...
 
void arm_f64_to_q7 (const float64_t *pSrc, q7_t *pDst, uint32_t blockSize)
 Converts the elements of the 64 bit floating-point vector to Q7 vector. More...
 
void arm_float_to_f64 (const float32_t *pSrc, float64_t *pDst, uint32_t blockSize)
 Converts the elements of the floating-point vector to 64 bit floating-point vector. More...
 
void arm_float_to_q31 (const float32_t *pSrc, q31_t *pDst, uint32_t blockSize)
 Converts the elements of the floating-point vector to Q31 vector. More...
 
void arm_float_to_q15 (const float32_t *pSrc, q15_t *pDst, uint32_t blockSize)
 Converts the elements of the floating-point vector to Q15 vector. More...
 
void arm_float_to_q7 (const float32_t *pSrc, q7_t *pDst, uint32_t blockSize)
 Converts the elements of the floating-point vector to Q7 vector. More...
 
void arm_q31_to_f64 (const q31_t *pSrc, float64_t *pDst, uint32_t blockSize)
 Converts the elements of the Q31 vector to 64 bit floating-point vector. More...
 
void arm_q31_to_float (const q31_t *pSrc, float32_t *pDst, uint32_t blockSize)
 Converts the elements of the Q31 vector to floating-point vector. More...
 
void arm_q31_to_q15 (const q31_t *pSrc, q15_t *pDst, uint32_t blockSize)
 Converts the elements of the Q31 vector to Q15 vector. More...
 
void arm_q31_to_q7 (const q31_t *pSrc, q7_t *pDst, uint32_t blockSize)
 Converts the elements of the Q31 vector to Q7 vector. More...
 
void arm_q15_to_f64 (const q15_t *pSrc, float64_t *pDst, uint32_t blockSize)
 Converts the elements of the Q15 vector to 64 bit floating-point vector. More...
 
void arm_q15_to_float (const q15_t *pSrc, float32_t *pDst, uint32_t blockSize)
 Converts the elements of the Q15 vector to floating-point vector. More...
 
void arm_q15_to_q31 (const q15_t *pSrc, q31_t *pDst, uint32_t blockSize)
 Converts the elements of the Q15 vector to Q31 vector. More...
 
void arm_q15_to_q7 (const q15_t *pSrc, q7_t *pDst, uint32_t blockSize)
 Converts the elements of the Q15 vector to Q7 vector. More...
 
void arm_q7_to_f64 (const q7_t *pSrc, float64_t *pDst, uint32_t blockSize)
 Converts the elements of the Q7 vector to 64 bit floating-point vector. More...
 
void arm_q7_to_float (const q7_t *pSrc, float32_t *pDst, uint32_t blockSize)
 Converts the elements of the Q7 vector to floating-point vector. More...
 
void arm_q7_to_q31 (const q7_t *pSrc, q31_t *pDst, uint32_t blockSize)
 Converts the elements of the Q7 vector to Q31 vector. More...
 
void arm_q7_to_q15 (const q7_t *pSrc, q15_t *pDst, uint32_t blockSize)
 Converts the elements of the Q7 vector to Q15 vector. More...
 
void arm_sort_f32 (const arm_sort_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
 Generic sorting function. More...
 
void arm_sort_init_f32 (arm_sort_instance_f32 *S, arm_sort_alg alg, arm_sort_dir dir)
 
void arm_merge_sort_f32 (const arm_merge_sort_instance_f32 *S, float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
 
void arm_merge_sort_init_f32 (arm_merge_sort_instance_f32 *S, arm_sort_dir dir, float32_t *buffer)
 
void arm_copy_f32 (const float32_t *pSrc, float32_t *pDst, uint32_t blockSize)
 Copies the elements of a floating-point vector. More...
 
void arm_copy_f64 (const float64_t *pSrc, float64_t *pDst, uint32_t blockSize)
 Copies the elements of a floating-point vector. More...
 
void arm_copy_q7 (const q7_t *pSrc, q7_t *pDst, uint32_t blockSize)
 Copies the elements of a Q7 vector. More...
 
void arm_copy_q15 (const q15_t *pSrc, q15_t *pDst, uint32_t blockSize)
 Copies the elements of a Q15 vector. More...
 
void arm_copy_q31 (const q31_t *pSrc, q31_t *pDst, uint32_t blockSize)
 Copies the elements of a Q31 vector. More...
 
void arm_fill_f32 (float32_t value, float32_t *pDst, uint32_t blockSize)
 Fills a constant value into a floating-point vector. More...
 
void arm_fill_f64 (float64_t value, float64_t *pDst, uint32_t blockSize)
 Fills a constant value into a floating-point vector. More...
 
void arm_fill_q7 (q7_t value, q7_t *pDst, uint32_t blockSize)
 Fills a constant value into a Q7 vector. More...
 
void arm_fill_q15 (q15_t value, q15_t *pDst, uint32_t blockSize)
 Fills a constant value into a Q15 vector. More...
 
void arm_fill_q31 (q31_t value, q31_t *pDst, uint32_t blockSize)
 Fills a constant value into a Q31 vector. More...
 
float32_t arm_weighted_sum_f32 (const float32_t *in, const float32_t *weigths, uint32_t blockSize)
 Weighted sum. More...
 
void arm_barycenter_f32 (const float32_t *in, const float32_t *weights, float32_t *out, uint32_t nbVectors, uint32_t vecDim)
 Barycenter. More...
 

Enumeration Type Documentation

◆ arm_sort_alg

Enumerator
ARM_SORT_BITONIC 

Bitonic sort

ARM_SORT_BUBBLE 

Bubble sort

ARM_SORT_HEAP 

Heap sort

ARM_SORT_INSERTION 

Insertion sort

ARM_SORT_QUICK 

Quick sort

ARM_SORT_SELECTION 

Selection sort

◆ arm_sort_dir

Enumerator
ARM_SORT_DESCENDING 

Descending order (9 to 0)

ARM_SORT_ASCENDING 

Ascending order (0 to 9)