#ifndef __M_FIXED_H__ #define __M_FIXED_H__ typedef int t_sample; #define t_fixed int #define fix1 18 /* (18) number of bits after comma */ #define fixfac ((float)(1<>fix1) #define idiv(a,b) ((((long long) (a) )<>fix1) /* Not working !! */ #define fnum(a) ( (a) >>(fix1-16)) #define ffrac(a) (0) /* mapping of fft functions */ #ifdef FIXEDPOINT #define mayer_realifft imayer_realifft #define mayer_realfft imayer_realfft #define mayer_fft imayer_fft #define mayer_ifft imayer_ifft #endif #ifdef FIXEDPOINT #define SCALE16(x) (x>>(fix1-15)) #define SCALE32(x) (x<<(32-fix1)) #define INVSCALE16(x) (x<<8) #else #define SCALE16(x) (32767.*x) #define SCALE32(x) (2147483648.*x) #define INVSCALE16(x) ((float)3.051850e-05*x) #endif #endif