#ifndef __GPUBASETOOL_H__ #define __GPUBASETOOL_H__ #include "GPUBaseLibAPI.h" #include "BaseConstVariable.h" #include #include #include #include "GPUTool.cuh" extern "C" GPUBASELIBAPI size_t getfsize(FILE* fp); extern "C" GPUBASELIBAPI unsigned char* loadBinFromPath(char* binPath, size_t* binpath_len); extern "C" GPUBASELIBAPI void writeComplexDataBinFile(char* dataPath, size_t datalen, cuComplex* data); template inline std::shared_ptr CPUToHost(std::shared_ptr CPUArr, size_t len) { std::shared_ptr result = std::shared_ptr((T*)mallocCUDAHost(len*sizeof(T)), FreeCUDAHost); for (size_t i = 0; i < len; i++) { result.get()[i] = CPUArr.get()[i]; } return result; } #endif // !__GPUBASETOOL_H__