Isis 3 Programmer Reference
FourierTransform.h
1#ifndef FourierTransform_h
2#define FourierTransform_h
8/* SPDX-License-Identifier: CC0-1.0 */
9
10#include <complex>
11#include <vector>
12#include "Constants.h"
13
14namespace Isis {
34 public:
37 std::vector< std::complex<double> > Transform(std::vector< std::complex<double> > input);
38 std::vector< std::complex<double> > Inverse(std::vector< std::complex<double> > input);
39 bool IsPowerOfTwo(int n);
40 int lg(int n);
41 int BitReverse(int n, int x);
42 int NextPowerOfTwo(int n);
43 };
44}
45
46#endif
Fourier Transform class.
int lg(int n)
This function returns the floor of log2(n)
std::vector< std::complex< double > > Inverse(std::vector< std::complex< double > > input)
Applies the inverse Fourier transform on the input data and returns the result.
int BitReverse(int n, int x)
Reverses the binary representation of the input integer in the number of bits specified.
std::vector< std::complex< double > > Transform(std::vector< std::complex< double > > input)
Applies the Fourier transform on the input data and returns the result.
FourierTransform()
Constructs the FourierTransform object.
bool IsPowerOfTwo(int n)
Checks to see if the input integer is a power of two.
int NextPowerOfTwo(int n)
This function returns the next power of two greater than or equal to n.
~FourierTransform()
Destroys the FourierTransform object.
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16