Openholo  v1.1
Open Source Digital Holographic Library
ophSig_GPU.h File Reference
#include <cufft.h>
#include <npp.h>
#include <cuda_profiler_api.h>
#include <cuda_runtime.h>
Include dependency graph for ophSig_GPU.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void cudaCvtFieldToCuFFT (Complex< Real > *src_data, cufftDoubleComplex *dst_data, int nx, int ny)
 
void cudaCvtCuFFTToField (cufftDoubleComplex *src_data, Complex< Real > *dst_data, int nx, int ny)
 
void cudaCuFFT (cufftHandle *plan, cufftDoubleComplex *src_data, cufftDoubleComplex *dst_data, int nx, int ny, int direction)
 
void cudaCuIFFT (cufftHandle *plan, cufftDoubleComplex *src_data, cufftDoubleComplex *dst_data, int nx, int ny, int direction)
 
void cudaCvtOFF (Complex< Real > *src_data, Real *dst_data, ophSigConfig *device_config, int nx, int ny, Real wl, Complex< Real > *F, Real *angle)
 
void cudaCvtHPO (CUstream_st *stream, cufftDoubleComplex *src_data, cufftDoubleComplex *dst_data, ophSigConfig *device_config, Complex< Real > *F, int nx, int ny, Real Rephase, Real Imphase)
 
void cudaCvtCAC (cufftDoubleComplex *src_data, cufftDoubleComplex *dst_data, Complex< Real > *FFZP, ophSigConfig *device_config, int nx, int ny, Real sigmaf, Real radius)
 
void cudaPropagation (cufftDoubleComplex *src_data, cufftDoubleComplex *dst_data, Complex< Real > *FH, ophSigConfig *device_config, int nx, int ny, Real sigmaf)
 
double cudaGetParamSF (cufftHandle *fftplan, cufftDoubleComplex *src_data, cufftDoubleComplex *temp_data, cufftDoubleComplex *dst_data, Real *f, Complex< Real > *FH, ophSigConfig *device_config, int nx, int ny, float zMax, float zMin, int sampN, float th, Real wl)
 
void cudaGetParamAT1 (Complex< Real > *src_data, Complex< Real > *Flr, Complex< Real > *Fli, Complex< Real > *G, ophSigConfig *device_config, int nx, int ny, Real_t NA_g, Real wl)
 
void cudaGetParamAT2 (Complex< Real > *Flr, Complex< Real > *Fli, Complex< Real > *G, Complex< Real > *temp_data, int nx, int ny)
 

Variables

cufftDoubleComplex * complex_holog_gpu
 
cudaStream_t streamLF
 

Function Documentation

◆ cudaCuFFT()

void cudaCuFFT ( cufftHandle *  plan,
cufftDoubleComplex *  src_data,
cufftDoubleComplex *  dst_data,
int  nx,
int  ny,
int  direction 
)

◆ cudaCuIFFT()

void cudaCuIFFT ( cufftHandle *  plan,
cufftDoubleComplex *  src_data,
cufftDoubleComplex *  dst_data,
int  nx,
int  ny,
int  direction 
)

◆ cudaCvtCAC()

void cudaCvtCAC ( cufftDoubleComplex *  src_data,
cufftDoubleComplex *  dst_data,
Complex< Real > *  FFZP,
ophSigConfig device_config,
int  nx,
int  ny,
Real  sigmaf,
Real  radius 
)

◆ cudaCvtCuFFTToField()

void cudaCvtCuFFTToField ( cufftDoubleComplex *  src_data,
Complex< Real > *  dst_data,
int  nx,
int  ny 
)

◆ cudaCvtFieldToCuFFT()

void cudaCvtFieldToCuFFT ( Complex< Real > *  src_data,
cufftDoubleComplex *  dst_data,
int  nx,
int  ny 
)

◆ cudaCvtHPO()

void cudaCvtHPO ( CUstream_st *  stream,
cufftDoubleComplex *  src_data,
cufftDoubleComplex *  dst_data,
ophSigConfig device_config,
Complex< Real > *  F,
int  nx,
int  ny,
Real  Rephase,
Real  Imphase 
)

◆ cudaCvtOFF()

void cudaCvtOFF ( Complex< Real > *  src_data,
Real dst_data,
ophSigConfig device_config,
int  nx,
int  ny,
Real  wl,
Complex< Real > *  F,
Real angle 
)

◆ cudaGetParamAT1()

void cudaGetParamAT1 ( Complex< Real > *  src_data,
Complex< Real > *  Flr,
Complex< Real > *  Fli,
Complex< Real > *  G,
ophSigConfig device_config,
int  nx,
int  ny,
Real_t  NA_g,
Real  wl 
)

◆ cudaGetParamAT2()

void cudaGetParamAT2 ( Complex< Real > *  Flr,
Complex< Real > *  Fli,
Complex< Real > *  G,
Complex< Real > *  temp_data,
int  nx,
int  ny 
)

◆ cudaGetParamSF()

double cudaGetParamSF ( cufftHandle *  fftplan,
cufftDoubleComplex *  src_data,
cufftDoubleComplex *  temp_data,
cufftDoubleComplex *  dst_data,
Real f,
Complex< Real > *  FH,
ophSigConfig device_config,
int  nx,
int  ny,
float  zMax,
float  zMin,
int  sampN,
float  th,
Real  wl 
)

◆ cudaPropagation()

void cudaPropagation ( cufftDoubleComplex *  src_data,
cufftDoubleComplex *  dst_data,
Complex< Real > *  FH,
ophSigConfig device_config,
int  nx,
int  ny,
Real  sigmaf 
)

Variable Documentation

◆ complex_holog_gpu

cufftDoubleComplex* complex_holog_gpu

Definition at line 56 of file ophSig_GPU.h.

◆ streamLF

cudaStream_t streamLF

Definition at line 58 of file ophSig_GPU.h.