gst_plugins_base/gst-libs/gst/fft/_kiss_fft_guts_f64.h
branchRCL_3
changeset 30 7e817e7e631c
parent 29 567bb019e3e3
equal deleted inserted replaced
29:567bb019e3e3 30:7e817e7e631c
    16    defines kiss_fft_f64_scalar as either short or a float type
    16    defines kiss_fft_f64_scalar as either short or a float type
    17    and defines
    17    and defines
    18    typedef struct { kiss_fft_f64_scalar r; kiss_fft_f64_scalar i; }kiss_fft_f64_cpx; */
    18    typedef struct { kiss_fft_f64_scalar r; kiss_fft_f64_scalar i; }kiss_fft_f64_cpx; */
    19 #include "kiss_fft_f64.h"
    19 #include "kiss_fft_f64.h"
    20 #include <limits.h>
    20 #include <limits.h>
    21 
       
    22 /* The 2*sizeof(size_t) alignment here is borrowed from
       
    23  * GNU libc, so it should be good most everywhere.
       
    24  * It is more conservative than is needed on some 64-bit
       
    25  * platforms, but ia64 does require a 16-byte alignment.
       
    26  * The SIMD extensions for x86 and ppc32 would want a
       
    27  * larger alignment than this, but we don't need to
       
    28  * do better than malloc.
       
    29  *
       
    30  * Borrowed from GLib's gobject/gtype.c
       
    31  */
       
    32 #define STRUCT_ALIGNMENT (2 * sizeof (size_t))
       
    33 #define ALIGN_STRUCT(offset) \
       
    34       ((offset + (STRUCT_ALIGNMENT - 1)) & -STRUCT_ALIGNMENT)
       
    35 
    21 
    36 #define MAXFACTORS 32
    22 #define MAXFACTORS 32
    37 /* e.g. an fft of length 128 has 4 factors 
    23 /* e.g. an fft of length 128 has 4 factors 
    38  as far as kissfft is concerned
    24  as far as kissfft is concerned
    39  4*4*4*2
    25  4*4*4*2