1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140
|
#ifndef LTFAT_H
#define LTFAT_H 1
#include "config.h"
#ifdef LTFAT_COMPAT32
typedef int ltfatInt;
#else
typedef ptrdiff_t ltfatInt;
#endif /* defined(LTFAT_COMPAT32) */
typedef enum
{
ltfatUnspecErr = 1,
ltfatNoErr = 0
} ltfatStatus;
typedef enum
{
FREQINV = 0,
TIMEINV = 1
} dgt_phasetype;
typedef enum
{
DCTI=FFTW_REDFT00, DCTIII=FFTW_REDFT01,
DCTII=FFTW_REDFT10, DCTIV=FFTW_REDFT11
} dct_kind;
typedef enum
{
DSTI=FFTW_RODFT00, DSTIII=FFTW_RODFT01,
DSTII=FFTW_RODFT10, DSTIV=FFTW_RODFT11
} dst_kind;
typedef enum
{
CZT_NEXTFASTFFT,
CZT_NEXTPOW2
} czt_ffthint;
typedef enum
{
PER,
PERDEC,
PPD,
SYM,
EVEN,
SYMW,
ASYM,
ODD,
ASYMW,
SP0,
ZPD,
ZERO,
VALID,
BAD_TYPE
} ltfatExtType;
/* BEGIN_C_DECLS */
#ifdef __cplusplus
extern "C"
{
#endif
// First, include headers of type (single, double, or complex versions) inert functions
#include "ltfat_typeconstant.h"
/* -------- Create the single precision routines headers ----- */
#ifndef LTFAT_DOUBLE
#ifndef LTFAT_SINGLE
# define LTFAT_SINGLE_WASNOTDEFINED
# define LTFAT_SINGLE
#endif
# include "ltfat_types.h"
# include "ltfat_typecomplexindependent.h"
# define LTFAT_COMPLEXTYPE
# include "ltfat_types.h"
# include "ltfat_typecomplexindependent.h"
# undef LTFAT_COMPLEXTYPE
# include "ltfat_types.h"
# include "ltfat_typeindependent.h"
# ifdef LTFAT_SINGLE_WASNOTDEFINED
# undef LTFAT_SINGLE
# undef LTFAT_SINGLE_WASNOTDEFINED
# endif
#endif
/* -------- Create the single precision routines headers ----- */
#ifndef LTFAT_SINGLE
#ifndef LTFAT_DOUBLE
# define LTFAT_DOUBLE_WASNOTDEFINED
# define LTFAT_DOUBLE
#endif
#include "ltfat_types.h"
#include "ltfat_typecomplexindependent.h"
#define LTFAT_COMPLEXTYPE
#include "ltfat_types.h"
#include "ltfat_typecomplexindependent.h"
#undef LTFAT_COMPLEXTYPE
#include "ltfat_types.h"
#include "ltfat_typeindependent.h"
# ifdef LTFAT_DOUBLE_WASNOTDEFINED
# undef LTFAT_DOUBLE
# undef LTFAT_DOUBLE_WASNOTDEFINED
# endif
#endif
// Undef all
#undef LTFAT_COMPLEX
#undef LTFAT_REAL
#undef LTFAT_TYPE
#undef LTFAT_NAME
#undef LTFAT_NAME_REAL
#undef LTFAT_NAME_COMPLEX
#undef LTFAT_FFTW
#undef LTFAT_MX_CLASSID
#undef LTFAT_MX_COMPLEXITY
#undef LTFAT_COMPLEXH
#ifdef __cplusplus
} // extern "C"
#endif
/* END_C_DECLS */
#endif /* !LTFAT_H */
|