From 464b8a570cd73a5dc5f15feadae3603dbbb60950 Mon Sep 17 00:00:00 2001 From: Vladislav Vinogradov Date: Mon, 14 Nov 2011 14:57:36 +0000 Subject: [PATCH] fixed compilation under linux --- modules/gpu/src/cuda/internal_shared.hpp | 1 + modules/gpu/src/cuda/safe_call.hpp | 11 +------- modules/gpu/src/opencv2/gpu/device/common.hpp | 36 +++++++++++++++------------ 3 files changed, 22 insertions(+), 26 deletions(-) diff --git a/modules/gpu/src/cuda/internal_shared.hpp b/modules/gpu/src/cuda/internal_shared.hpp index ecce14b..d0df0bb 100644 --- a/modules/gpu/src/cuda/internal_shared.hpp +++ b/modules/gpu/src/cuda/internal_shared.hpp @@ -48,6 +48,7 @@ #include "NPP_staging.hpp" #include "opencv2/gpu/devmem2d.hpp" #include "safe_call.hpp" +#include "opencv2/gpu/device/common.hpp" namespace cv { namespace gpu { diff --git a/modules/gpu/src/cuda/safe_call.hpp b/modules/gpu/src/cuda/safe_call.hpp index 0685a3e..94ba457 100644 --- a/modules/gpu/src/cuda/safe_call.hpp +++ b/modules/gpu/src/cuda/safe_call.hpp @@ -49,13 +49,11 @@ #include "NCV.hpp" #if defined(__GNUC__) - #define cudaSafeCall(expr) ___cudaSafeCall(expr, __FILE__, __LINE__, __func__) #define nppSafeCall(expr) ___nppSafeCall(expr, __FILE__, __LINE__, __func__) #define ncvSafeCall(expr) ___ncvSafeCall(expr, __FILE__, __LINE__, __func__) #define cufftSafeCall(expr) ___cufftSafeCall(expr, __FILE__, __LINE__, __func__) #define cublasSafeCall(expr) ___cublasSafeCall(expr, __FILE__, __LINE__, __func__) #else /* defined(__CUDACC__) || defined(__MSVC__) */ - #define cudaSafeCall(expr) ___cudaSafeCall(expr, __FILE__, __LINE__) #define nppSafeCall(expr) ___nppSafeCall(expr, __FILE__, __LINE__) #define ncvSafeCall(expr) ___ncvSafeCall(expr, __FILE__, __LINE__) #define cufftSafeCall(expr) ___cufftSafeCall(expr, __FILE__, __LINE__) @@ -64,19 +62,12 @@ namespace cv { namespace gpu { - void error(const char *error_string, const char *file, const int line, const char *func = ""); void nppError(int err, const char *file, const int line, const char *func = ""); void ncvError(int err, const char *file, const int line, const char *func = ""); void cufftError(int err, const char *file, const int line, const char *func = ""); void cublasError(int err, const char *file, const int line, const char *func = ""); }} -static inline void ___cudaSafeCall(cudaError_t err, const char *file, const int line, const char *func = "") -{ - if (cudaSuccess != err) - cv::gpu::error(cudaGetErrorString(err), file, line, func); -} - static inline void ___nppSafeCall(int err, const char *file, const int line, const char *func = "") { if (err < 0) @@ -101,4 +92,4 @@ static inline void ___cublasSafeCall(cublasStatus_t err, const char *file, const cv::gpu::cublasError(err, file, line, func); } -#endif /* __OPENCV_CUDA_SAFE_CALL_HPP__ */ \ No newline at end of file +#endif /* __OPENCV_CUDA_SAFE_CALL_HPP__ */ diff --git a/modules/gpu/src/opencv2/gpu/device/common.hpp b/modules/gpu/src/opencv2/gpu/device/common.hpp index 9633d0a..7b93921 100644 --- a/modules/gpu/src/opencv2/gpu/device/common.hpp +++ b/modules/gpu/src/opencv2/gpu/device/common.hpp @@ -58,6 +58,25 @@ #endif #endif +#if defined(__GNUC__) + #define cudaSafeCall(expr) ___cudaSafeCall(expr, __FILE__, __LINE__, __func__) +#else /* defined(__CUDACC__) || defined(__MSVC__) */ + #define cudaSafeCall(expr) ___cudaSafeCall(expr, __FILE__, __LINE__) +#endif + +namespace cv { namespace gpu +{ + void error(const char *error_string, const char *file, const int line, const char *func = ""); +}} + +static inline void ___cudaSafeCall(cudaError_t err, const char *file, const int line, const char *func = "") +{ + if (cudaSuccess != err) + cv::gpu::error(cudaGetErrorString(err), file, line, func); +} + +#ifdef __CUDACC__ + namespace cv { namespace gpu { __host__ __device__ __forceinline__ int divUp(int total, int grain) @@ -80,21 +99,6 @@ namespace cv { namespace gpu } }} -#if defined(__GNUC__) - #define cudaSafeCall(expr) ___cudaSafeCall(expr, __FILE__, __LINE__, __func__) -#else /* defined(__CUDACC__) || defined(__MSVC__) */ - #define cudaSafeCall(expr) ___cudaSafeCall(expr, __FILE__, __LINE__) -#endif - -namespace cv { namespace gpu -{ - void error(const char *error_string, const char *file, const int line, const char *func = ""); -}} - -static inline void ___cudaSafeCall(cudaError_t err, const char *file, const int line, const char *func = "") -{ - if (cudaSuccess != err) - cv::gpu::error(cudaGetErrorString(err), file, line, func); -} +#endif // __CUDACC__ #endif // __OPENCV_GPU_COMMON_HPP__ -- 2.7.4