Openholo  v5.0
Open Source Digital Holographic Library
ophSig_GPU.h File Reference
#include <cufft.h>
#include <npp.h>
#include <cuda_profiler_api.h>
#include <cuda_runtime_api.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 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 (cuDoubleComplex *src_data, Real *dst_data, ophSigConfig *device_config, int nx, int ny, Real wl, cuDoubleComplex *F, Real *angle)
 
void cudaCvtHPO (CUstream_st *stream, cufftDoubleComplex *src_data, cufftDoubleComplex *dst_data, ophSigConfig *device_config, cuDoubleComplex *F, int nx, int ny, Real Rephase, Real Imphase)
 
void cudaCvtCAC (cufftDoubleComplex *src_data, cufftDoubleComplex *dst_data, cuDoubleComplex *FFZP, ophSigConfig *device_config, int nx, int ny, Real sigmaf, Real radius)
 
void cudaPropagation (cufftDoubleComplex *src_data, cufftDoubleComplex *dst_data, cuDoubleComplex *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, cuDoubleComplex *FH, ophSigConfig *device_config, int nx, int ny, float zMax, float zMin, int sampN, float th, Real wl)
 
void cudaGetParamAT1 (cuDoubleComplex *src_data, cuDoubleComplex *Flr, cuDoubleComplex *Fli, cuDoubleComplex *G, ophSigConfig *device_config, int nx, int ny, Real_t NA_g, Real wl)
 
void cudaGetParamAT2 (cuDoubleComplex *Flr, cuDoubleComplex *Fli, cuDoubleComplex *G, cuDoubleComplex *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,
cuDoubleComplex *  FFZP,
ophSigConfig device_config,
int  nx,
int  ny,
Real  sigmaf,
Real  radius 
)

◆ cudaCvtHPO()

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

◆ cudaCvtOFF()

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

◆ cudaGetParamAT1()

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

◆ cudaGetParamAT2()

void cudaGetParamAT2 ( cuDoubleComplex *  Flr,
cuDoubleComplex *  Fli,
cuDoubleComplex *  G,
cuDoubleComplex *  temp_data,
int  nx,
int  ny 
)

◆ cudaGetParamSF()

double cudaGetParamSF ( cufftHandle *  fftplan,
cufftDoubleComplex *  src_data,
cufftDoubleComplex *  temp_data,
cufftDoubleComplex *  dst_data,
Real f,
cuDoubleComplex *  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,
cuDoubleComplex *  FH,
ophSigConfig device_config,
int  nx,
int  ny,
Real  sigmaf 
)

Variable Documentation

◆ complex_holog_gpu

cufftDoubleComplex* complex_holog_gpu

Definition at line 55 of file ophSig_GPU.h.

◆ streamLF

cudaStream_t streamLF

Definition at line 57 of file ophSig_GPU.h.