-
- typedef enum {
- FILTER_INVALID,
- FILTER_BANDLIMIT,
- FILTER_SINC,
- FILTER_G_HAMMING,
- FILTER_COSINE,
- FILTER_TRIANGLE,
- FILTER_ABS_BANDLIMIT, // filter times |x|
- FILTER_ABS_SINC,
- FILTER_ABS_G_HAMMING,
- FILTER_ABS_COSINE,
- FILTER_SHEPP
- } FilterID;
-
- typedef enum {
- FILTER_METHOD_INVALID,
- FILTER_METHOD_CONVOLUTION,
- FILTER_METHOD_FOURIER,
- FILTER_METHOD_FOURIER_TABLE,
- FILTER_METHOD_FFT,
-#if HAVE_FFTW
- FILTER_METHOD_FFTW,
- FILTER_METHOD_RFFTW,
-#endif
- } FilterMethodID;
-
- typedef enum {
- DOMAIN_INVALID,
- DOMAIN_FREQUENCY,
- DOMAIN_SPATIAL
- } DomainID;
-
- // Filters
- static const char FILTER_ABS_BANDLIMIT_STR[];
- static const char FILTER_ABS_SINC_STR[];
- static const char FILTER_ABS_COS_STR[];
- static const char FILTER_ABS_HAMMING_STR[];
- static const char FILTER_SHEPP_STR[];
- static const char FILTER_BANDLIMIT_STR[];
- static const char FILTER_SINC_STR[];
- static const char FILTER_COS_STR[];
- static const char FILTER_HAMMING_STR[];
- static const char FILTER_TRIANGLE_STR[];
-
- static const char FILTER_ABS_BANDLIMIT_TITLE_STR[];
- static const char FILTER_ABS_SINC_TITLE_STR[];
- static const char FILTER_ABS_COS_TITLE_STR[];
- static const char FILTER_ABS_HAMMING_TITLE_STR[];
- static const char FILTER_SHEPP_TITLE_STR[];
- static const char FILTER_BANDLIMIT_TITLE_STR[];
- static const char FILTER_SINC_TITLE_STR[];
- static const char FILTER_COS_TITLE_STR[];
- static const char FILTER_HAMMING_TITLE_STR[];
- static const char FILTER_TRIANGLE_TITLE_STR[];
-
- // Filter Methods
- static const char FILTER_METHOD_CONVOLUTION_STR[];
- static const char FILTER_METHOD_FOURIER_STR[];
- static const char FILTER_METHOD_FOURIER_TABLE_STR[];
- static const char FILTER_METHOD_FFT_STR[];
-#if HAVE_FFTW
- static const char FILTER_METHOD_FFTW_STR[];
- static const char FILTER_METHOD_RFFTW_STR[];
-#endif
-
- static const char FILTER_METHOD_CONVOLUTION_TITLE_STR[];
- static const char FILTER_METHOD_FOURIER_TITLE_STR[];
- static const char FILTER_METHOD_FOURIER_TABLE_TITLE_STR[];
- static const char FILTER_METHOD_FFT_TITLE_STR[];
-#if HAVE_FFTW
- static const char FILTER_METHOD_FFTW_TITLESTR[];
- static const char FILTER_METHOD_RFFTW_TITLE_STR[];
-#endif
-
- // Domains
- static const char DOMAIN_FREQUENCY_STR[];
- static const char DOMAIN_SPATIAL_STR[];
-
- static const char DOMAIN_FREQUENCY_TITLE_STR[];
- static const char DOMAIN_SPATIAL_TITLE_STR[];
-
-
- SignalFilter (const char* filterName, const char* filterMethodName,double bw, double signalIncrement, int n, double param, const char* domainName, const int zeropad = 0, const int preinterpolationFactor = 1);
-
- SignalFilter (const FilterID filt_type, FilterMethodID filterMethodID, double bw, double signalIncrement, int n, double param, const DomainID domain, const int zeropad = 0, const int preinterpolationFactor = 1);
-
- SignalFilter (const char* filterName, const char* domainName, double bw, double param);
+ static const int FILTER_INVALID;
+ static const int FILTER_ABS_BANDLIMIT; // filter times |x|
+ static const int FILTER_ABS_SINC;
+ static const int FILTER_ABS_G_HAMMING;
+ static const int FILTER_ABS_HANNING;
+ static const int FILTER_ABS_COSINE;
+ static const int FILTER_SHEPP;
+ static const int FILTER_BANDLIMIT;
+ static const int FILTER_SINC;
+ static const int FILTER_G_HAMMING;
+ static const int FILTER_HANNING;
+ static const int FILTER_COSINE;
+ static const int FILTER_TRIANGLE;
+
+ static const int DOMAIN_INVALID;
+ static const int DOMAIN_FREQUENCY;
+ static const int DOMAIN_SPATIAL;
+
+ SignalFilter (const char* szFilterName, double dFilterMinimum, double dFilterMaximum, int nFilterPoints, double dBandwidth, double dFilterParam, const char* szDomainName);
+
+ SignalFilter (const int idFilter, double dFilterMinimum, double dFilterMaximum, int nFilterPoints, double dBandwidth, double dFilterParam, const int idDomain);
+
+ SignalFilter (const char* szFilterName, const char* szDomainName, double dBandwidth, double dFilterParam);