#ifndef _GPUTBPIMAGE_H_
#define _GPUTBPIMAGE_H_

#include "BaseConstVariable.h"
#include "GPUTool.cuh"
#include <cuda_runtime.h>
#include <device_launch_parameters.h>
#include <cublas_v2.h>
#include <cuComplex.h>
#include "GPUTool.cuh"



extern __global__ void CUDA_TBPImage(
	float* antPx, float* antPy, float* antPz,
	float* imgx, float* imgy, float* imgz, float* R,
	cuComplex* echoArr, cuComplex* imgArr,
	float freq, float fs, float Rnear, float Rfar,
	long rowcount, long colcount,
	long prfid, long freqcount
);

extern "C" void CUDATBPImage(
	float* antPx,
	float* antPy,
	float* antPz,
	float* imgx,
	float* imgy,
	float* imgz,
	float* R,
	long* Cids,
	cuComplex* echoArr,
	cuComplex* imgArr,
	cuComplex* imgEchoArr,
	float freq, float fs, float Rnear, float Rfar,
	long rowcount, long colcount,
	long prfid, long freqcount
);

#endif
