IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
CudaUtils.h
Go to the documentation of this file.
1 // CudaUtils.h:
3 // ----------------
4 //
13 
14 #ifndef __IPSDKBASEIMAGETOOLS_CUDAUTILS_H__
15 #define __IPSDKBASEIMAGETOOLS_CUDAUTILS_H__
16 
19 
20 namespace ipsdk {
21 namespace image {
22 namespace tools {
23 
25 template <typename T>
27 const T* extractBufferData(const CudaImage& cudaImg, const ipUInt64 deviceIdx);
28 
30 template <typename T>
32 T* extractBufferData(CudaImage& cudaImg, ipUInt64 deviceIdx);
33 
35 template <typename T>
37 const T* extractBufferData(const CudaImage& cudaImg,
38  const ipUInt64 zPlanIdx,
39  const ipUInt64 cPlanIdx,
40  const ipUInt64 tPlanIdx);
41 
43 template <typename T>
45 T* extractBufferData(CudaImage& cudaImg,
46  const ipUInt64 zPlanIdx,
47  const ipUInt64 cPlanIdx,
48  const ipUInt64 tPlanIdx);
49 
50 
51 
52 
54 template <typename T>
56 const std::vector<const T*> extractBufferDataColl(const CudaImage& cudaImg);
57 
59 template <typename T>
61 const std::vector<T*> extractBufferDataColl(CudaImage& cudaImg);
62 
64 template <typename T>
66 const T** extractBufferDataCollToGpu(const CudaImage& cudaImg);
67 
69 template <typename T>
72 
74 template <typename T>
76 void freeBufferDataColl(const T** pDeviceData);
77 
78 template <typename T>
80 void freeBufferDataColl(T** pDeviceData);
81 
84 
85 } // end of namespace tools
86 } // end of namespace image
87 } // end of namespace ipsdk
88 
89 #endif // __IPSDKBASEIMAGETOOLS_CUDAUTILS_H__
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
uint64_t ipUInt64
Base types definition.
Definition: BaseTypes.h:55
IPSDKBASEIMAGETOOLS_API const T ** extractBufferDataCollToGpu(const CudaImage &cudaImg)
Exports the std::vector created by extractBufferDataColl to gpu.
IPSDKBASEIMAGETOOLS_API void freeBufferDataColl(const T **pDeviceData)
Free the vector allocated by extractBufferDataColl.
IPSDKBASEIMAGETOOLS_API const T * extractBufferData(const CudaImage &cudaImg, const ipUInt64 deviceIdx)
Extracts a buffer data from a CudaImage as a const T* data.
Definition of import/export macro for library.
IPSDKBASEIMAGETOOLS_API const std::vector< const T * > extractBufferDataColl(const CudaImage &cudaImg)
Creates a std::vector containing the buffers of all the plan of an image.
Definition: CudaImage.h:28
#define IPSDKBASEIMAGETOOLS_API
Import/Export macro for library IPSDKBaseImageTools.
Definition: IPSDKBaseImageToolsExports.h:25
Predefined type for image management.