cudaImage.h
00001
00002
00003
00004
00005 #ifndef CUDAIMAGE_H
00006 #define CUDAIMAGE_H
00007
00008 typedef struct {
00009 int width, height;
00010 int pitch;
00011 float *h_data;
00012 float *d_data;
00013 void *t_data;
00014 } CudaImage;
00015
00016 typedef CudaImage CudaArray;
00017
00018 int iDivUp(int a, int b);
00019 int iDivDown(int a, int b);
00020 int iAlignUp(int a, int b);
00021 int iAlignDown(int a, int b);
00022
00023 void StartTimer(unsigned int *hTimer);
00024 double StopTimer(unsigned int hTimer);
00025 double AllocCudaImage(CudaImage *img, int w, int h, int p,
00026 bool host, bool dev);
00027 double FreeCudaImage(CudaImage *img);
00028 double Download(CudaImage *img);
00029 double Readback(CudaImage *img, int w = -1, int h = -1);
00030 double InitTexture(CudaImage *img);
00031 double CopyToTexture(CudaImage *src, CudaImage *dst, bool host);
00032
00033 #endif // CUDAIMAGE_H