** This is part of the CTSim program
** Copyright (C) 1983-2000 Kevin Rosenberg
**
-** $Id: procsignal.h,v 1.8 2000/12/16 06:12:47 kevin Exp $
+** $Id: procsignal.h,v 1.11 2001/01/02 05:34:57 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
class SignalFilter;
class SGP;
+\r
+typedef std::complex<double> CTSimComplex;\r
+\r
class ProcessSignal {
public:
static const int FILTER_GENERATION_INVALID;
static const int FILTER_GENERATION_DIRECT;
static const int FILTER_GENERATION_INVERSE_FOURIER;
+\r
+ enum {\r
+ FORWARD = -1,\r
+ BACKWARD = 1,\r
+ };\r
ProcessSignal (const char* szFilterName, const char* szFilterMethodName,double bw, double signalIncrement, int n, double param, const char* szDomainName, const char* szFilterGenerationName, const int zeropad = 0, const int preinterpolationFactor = 1, const int iTraceLevel = Trace::TRACE_NONE, int iGeometry = Scanner::GEOMETRY_PARALLEL, double dFocalLength = 1., SGP* pSGP = NULL);
static void finiteFourierTransform (const double input[], std::complex<double> output[], const int n, const int direction);
static void finiteFourierTransform (const std::complex<double> input[], std::complex<double> output[], const int n, const int direction);
static void finiteFourierTransform (const std::complex<double> input[], double output[], const int n, const int direction);
-
-
- static void shuffleNaturalToFourierOrder (double* pdVector, const int n);
-
- static void shuffleFourierToNaturalOrder (double* pdVector, const int n);
+\r
private:
std::string m_nameFilterMethod;