[an error occurred while processing this directive]
|
#ifdef FIXED_POINT
#define fft_n short
#else
#define fft_n float
#endif
typedef struct {
fft_n r;
fft_n i;
} fft_v;
#ifdef FIXED_POINT
#define C_ADD(x,a,b) \
do{ (x).r = ( ( (a).r+(b).r +1) >> 1 );\
(x).i = ( ( (a).i+(b).i +1) >> 1 ); } while(0)
#define C_SUB(x,a,b) \
do{ (x).r = ( ( (a).r-(b).r +1) >> 1 );\
(x).i = ( ( (a).i-(b).i +1) >> 1 ); } while(0)
#define C_MUL(m,a,b) \
do{ (m).r = ( ( (a).r*(b.r) - (a).i*(b).i) + (1<<14) ) >> 15;\
(m).i = ( ( (a).r*(b.i) + (a).i*(b).r) + (1<<14) ) >> 15;\
} while(0)
#else // floating point
........
E-mail: info@telesys.ru