ISCE_INSAR/contrib/PyCuAmpcor/src/cuCorrFrequency.h

37 lines
790 B
C
Raw Normal View History

2019-01-16 19:40:08 +00:00
/*
* @file cuCorrFrequency.h
* @brief A class performs cross correlation in frequency domain
2019-01-16 19:40:08 +00:00
*/
// code guard
2019-01-16 19:40:08 +00:00
#ifndef __CUCORRFREQUENCY_H
#define __CUCORRFREQUENCY_H
// dependencies
2019-01-16 19:40:08 +00:00
#include "cudaUtil.h"
#include "cuArrays.h"
class cuFreqCorrelator
{
private:
// handles for forward/backward fft
2019-01-16 19:40:08 +00:00
cufftHandle forwardPlan;
cufftHandle backwardPlan;
// work data
2019-01-16 19:40:08 +00:00
cuArrays<float2> *workFM;
cuArrays<float2> *workFS;
cuArrays<float> *workT;
// cuda stream
2019-01-16 19:40:08 +00:00
cudaStream_t stream;
public:
// constructor
2019-01-16 19:40:08 +00:00
cuFreqCorrelator(int imageNX, int imageNY, int nImages, cudaStream_t stream_);
// destructor
~cuFreqCorrelator();
// executor
2019-01-16 19:40:08 +00:00
void execute(cuArrays<float> *templates, cuArrays<float> *images, cuArrays<float> *results);
};
#endif //__CUCORRFREQUENCY_H
// end of file