#include <cfft2d_calc_block.hpp>
dcf::CFFT2DCalcBlock::CFFT2DCalcBlock |
( |
const dcf::Manager & |
manager, |
|
|
int |
direction = 1 , |
|
|
bool |
normalize = true |
|
) |
| |
Default FFT calculations block constructor
with DCF Manager provided. Direction should be 1 for direct fft and -1 for inverse fft. By default spectrum will be normalized.
virtual dcf::CFFT2DCalcBlock::~CFFT2DCalcBlock |
( |
| ) |
|
|
virtual |
void dcf::CFFT2DCalcBlock::calcModule |
( |
size_t |
dim_x, |
|
|
size_t |
dim_y, |
|
|
float * |
re, |
|
|
float * |
im, |
|
|
float * |
mod |
|
) |
| |
Calculates module mod for complex data (re, im). All arrays should be predefined.
bool dcf::CFFT2DCalcBlock::cuda_fft |
( |
| ) |
|
|
protected |
Calculates FFT using CUDA. Returns false on error.
void dcf::CFFT2DCalcBlock::cuda_set_data |
( |
size_t |
dim_x, |
|
|
size_t |
dim_y, |
|
|
float * |
re_data, |
|
|
float * |
im_data |
|
) |
| |
|
protected |
Set data for CUDA (construct or not new fft plan depended on new sizes provided)
int dcf::CFFT2DCalcBlock::getDirection |
( |
| ) |
const |
|
inline |
Gets current fft direction.
bool dcf::CFFT2DCalcBlock::isNormalize |
( |
| ) |
const |
|
inline |
virtual void dcf::CFFT2DCalcBlock::run |
( |
| ) |
|
|
protectedvirtual |
Main calculations method. Provides result code.
Reimplemented from dcf::CalcBlock.
Try to select free device with maximal weight.
void dcf::CFFT2DCalcBlock::setData |
( |
size_t |
dim_x, |
|
|
size_t |
dim_y, |
|
|
float * |
re_data, |
|
|
float * |
im_data |
|
) |
| |
Sets pointers of input/output data without copying inside.
Provides result code.
void dcf::CFFT2DCalcBlock::setDirection |
( |
int |
dir | ) |
|
|
inline |
Sets fft direction. True for direct fft, false for inverse fft.
void dcf::CFFT2DCalcBlock::setNormalize |
( |
bool |
normalize | ) |
|
|
inline |
virtual void dcf::CFFT2DCalcBlock::start |
( |
| ) |
|
|
virtual |
size_t dcf::CFFT2DCalcBlock::dim_y |
int dcf::CFFT2DCalcBlock::dir |
float* dcf::CFFT2DCalcBlock::im |
struct { ... } dcf::CFFT2DCalcBlock::m_data |
bool dcf::CFFT2DCalcBlock::new_plan |
true if we have to reconstruct plan
bool dcf::CFFT2DCalcBlock::normalize |
true if spectrum has to be normalized
float* dcf::CFFT2DCalcBlock::re |
The documentation for this class was generated from the following file: