Replace private.cuda.hpp with conditional include of cuda_fp16.h.

This commit is contained in:
Peter J. Stieber 2017-10-03 17:47:52 -07:00
parent 2a2537725a
commit 5669ee815b

View File

@ -47,7 +47,9 @@
#define OPENCV_CUDEV_UTIL_SATURATE_CAST_HPP
#include "../common.hpp"
#include "opencv2/core/private.cuda.hpp"
#if __CUDACC_VER_MAJOR__ >= 9
#include <cuda_fp16.h>
#endif
namespace cv { namespace cudev {
@ -275,7 +277,7 @@ template <typename T, typename D> __device__ __forceinline__ D cast_fp16(T v);
template <> __device__ __forceinline__ float cast_fp16<short, float>(short v)
{
#if __CUDACC_VER_MAJOR__ >= 9
#if __CUDACC_VER_MAJOR__ >= 9
return float(*(__half*)&v);
#else
return __half2float(v);
@ -284,7 +286,7 @@ template <> __device__ __forceinline__ float cast_fp16<short, float>(short v)
template <> __device__ __forceinline__ short cast_fp16<float, short>(float v)
{
#if __CUDACC_VER_MAJOR__ >= 9
#if __CUDACC_VER_MAJOR__ >= 9
__half h(v);
return *(short*)&v;
#else