2
3
4
5
6
7
8
9
10
11
12
13
21#define SHZ_CMPLXF(x, y) shz_cinitf(x, y)
32typedef shz_complex_t shz_complex;
34SHZ_INLINE shz_complex_t shz_cinitf(
float real,
float imag) SHZ_NOEXCEPT;
36SHZ_INLINE
bool shz_cequalf(shz_complex_t lhs, shz_complex_t rhs) SHZ_NOEXCEPT;
38SHZ_INLINE shz_complex_t shz_caddf(shz_complex_t lhs, shz_complex_t rhs) SHZ_NOEXCEPT;
40SHZ_INLINE shz_complex_t shz_csubf(shz_complex_t lhs, shz_complex_t rhs) SHZ_NOEXCEPT;
42SHZ_INLINE shz_complex_t shz_cmulf(shz_complex_t lhs, shz_complex_t rhs) SHZ_NOEXCEPT;
44SHZ_INLINE shz_complex_t shz_cdivf(shz_complex_t lhs, shz_complex_t rhs) SHZ_NOEXCEPT;
46SHZ_INLINE
float shz_crealf(shz_complex_t c) SHZ_NOEXCEPT;
47SHZ_INLINE
float shz_cimagf(shz_complex_t c) SHZ_NOEXCEPT;
49SHZ_INLINE
float shz_cabsf(shz_complex_t c) SHZ_NOEXCEPT;
50SHZ_INLINE
float shz_cargf(shz_complex_t c) SHZ_NOEXCEPT;
51SHZ_INLINE shz_complex_t shz_conjf(shz_complex_t c) SHZ_NOEXCEPT;
53SHZ_INLINE shz_complex_t shz_csqrtf(shz_complex_t c) SHZ_NOEXCEPT;
54SHZ_INLINE shz_complex_t shz_cpowf(shz_complex_t base, shz_complex_t exp) SHZ_NOEXCEPT;
56SHZ_INLINE shz_complex_t shz_clogf(shz_complex_t c) SHZ_NOEXCEPT;
57SHZ_INLINE shz_complex_t shz_cexpf(shz_complex_t c) SHZ_NOEXCEPT;
58SHZ_INLINE shz_complex_t shz_clog10f(shz_complex_t c) SHZ_NOEXCEPT;
61SHZ_INLINE shz_complex_t shz_csinf(shz_complex_t c) SHZ_NOEXCEPT;
63
64
65
66
67
68
74void shz_fft(shz_complex_t* s, size_t size) SHZ_NOEXCEPT;
76#include "inline/shz_complex.inl.h"
#define SHZ_CMPLXF32(x, y)