X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=include%2Ffilter.h;h=5527b3eaddabf57cd094809de8db781cf042d3e1;hb=04c6595c9b3a36151671fd8f697f8a9a38dce735;hp=4a25b5bcd6eee6a91eca50a4407dcf33af30cb1b;hpb=30e455abcd8cac05ce7afe43216ec9e26342e1cf;p=ctsim.git diff --git a/include/filter.h b/include/filter.h index 4a25b5b..5527b3e 100644 --- a/include/filter.h +++ b/include/filter.h @@ -9,7 +9,7 @@ ** This is part of the CTSim program ** Copyright (C) 1983-2000 Kevin Rosenberg ** -** $Id: filter.h,v 1.13 2000/07/11 10:32:44 kevin Exp $ +** $Id: filter.h,v 1.15 2000/07/20 11:17:31 kevin Exp $ ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License (version 2) as @@ -29,6 +29,17 @@ #define FILTER_H +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#ifdef HAVE_FFTW +#include +#include +#endif + +#include + + class SignalFilter { public: @@ -64,28 +75,54 @@ class SignalFilter { DOMAIN_SPATIAL } DomainID; - static const char FILTER_ABS_BANDLIMIT_STR[]= "abs_bandlimit"; - static const char FILTER_ABS_SINC_STR[]= "abs_sinc"; - static const char FILTER_ABS_COS_STR[]= "abs_cos"; - static const char FILTER_ABS_HAMMING_STR[]= "abs_hamming"; - static const char FILTER_SHEPP_STR[]= "shepp"; - static const char FILTER_BANDLIMIT_STR[]= "bandlimit"; - static const char FILTER_SINC_STR[]= "sinc"; - static const char FILTER_COS_STR[]= "cos"; - static const char FILTER_HAMMING_STR[]= "hamming"; - static const char FILTER_TRIANGLE_STR[]= "triangle"; + // 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[]; - static const char FILTER_METHOD_CONVOLUTION_STR[]= "convolution"; - static const char FILTER_METHOD_FOURIER_STR[]= "fourier"; - static const char FILTER_METHOD_FOURIER_TABLE_STR[]="fourier_table"; - static const char FILTER_METHOD_FFT_STR[]= "fft"; + // 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[]= "fftw"; - static const char FILTER_METHOD_RFFTW_STR[]= "rfftw"; + static const char FILTER_METHOD_FFTW_STR[]; + static const char FILTER_METHOD_RFFTW_STR[]; #endif - static const char DOMAIN_FREQUENCY_STR[]="frequency"; - static const char DOMAIN_SPATIAL_STR[]="spatial"; + 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);