Merge pull request #5480 from dtmoodie:vecgpumat
This commit is contained in:
@@ -164,7 +164,8 @@ public:
|
||||
CUDA_GPU_MAT = 9 << KIND_SHIFT,
|
||||
UMAT =10 << KIND_SHIFT,
|
||||
STD_VECTOR_UMAT =11 << KIND_SHIFT,
|
||||
STD_BOOL_VECTOR =12 << KIND_SHIFT
|
||||
STD_BOOL_VECTOR =12 << KIND_SHIFT,
|
||||
STD_VECTOR_CUDA_GPU_MAT = 13 << KIND_SHIFT
|
||||
};
|
||||
|
||||
_InputArray();
|
||||
@@ -181,6 +182,7 @@ public:
|
||||
template<typename _Tp, int m, int n> _InputArray(const Matx<_Tp, m, n>& matx);
|
||||
_InputArray(const double& val);
|
||||
_InputArray(const cuda::GpuMat& d_mat);
|
||||
_InputArray(const std::vector<cuda::GpuMat>& d_mat_array);
|
||||
_InputArray(const ogl::Buffer& buf);
|
||||
_InputArray(const cuda::HostMem& cuda_mem);
|
||||
template<typename _Tp> _InputArray(const cudev::GpuMat_<_Tp>& m);
|
||||
@@ -192,6 +194,7 @@ public:
|
||||
UMat getUMat(int idx=-1) const;
|
||||
void getMatVector(std::vector<Mat>& mv) const;
|
||||
void getUMatVector(std::vector<UMat>& umv) const;
|
||||
void getGpuMatVector(std::vector<cuda::GpuMat>& gpumv) const;
|
||||
cuda::GpuMat getGpuMat() const;
|
||||
ogl::Buffer getOGlBuffer() const;
|
||||
|
||||
@@ -223,7 +226,7 @@ public:
|
||||
bool isUMatVector() const;
|
||||
bool isMatx() const;
|
||||
bool isVector() const;
|
||||
|
||||
bool isGpuMatVector() const;
|
||||
~_InputArray();
|
||||
|
||||
protected:
|
||||
@@ -283,6 +286,7 @@ public:
|
||||
_OutputArray(Mat& m);
|
||||
_OutputArray(std::vector<Mat>& vec);
|
||||
_OutputArray(cuda::GpuMat& d_mat);
|
||||
_OutputArray(std::vector<cuda::GpuMat>& d_mat);
|
||||
_OutputArray(ogl::Buffer& buf);
|
||||
_OutputArray(cuda::HostMem& cuda_mem);
|
||||
template<typename _Tp> _OutputArray(cudev::GpuMat_<_Tp>& m);
|
||||
@@ -299,6 +303,7 @@ public:
|
||||
_OutputArray(const Mat& m);
|
||||
_OutputArray(const std::vector<Mat>& vec);
|
||||
_OutputArray(const cuda::GpuMat& d_mat);
|
||||
_OutputArray(const std::vector<cuda::GpuMat>& d_mat);
|
||||
_OutputArray(const ogl::Buffer& buf);
|
||||
_OutputArray(const cuda::HostMem& cuda_mem);
|
||||
template<typename _Tp> _OutputArray(const cudev::GpuMat_<_Tp>& m);
|
||||
@@ -317,6 +322,7 @@ public:
|
||||
Mat& getMatRef(int i=-1) const;
|
||||
UMat& getUMatRef(int i=-1) const;
|
||||
cuda::GpuMat& getGpuMatRef() const;
|
||||
std::vector<cuda::GpuMat>& getGpuMatVecRef() const;
|
||||
ogl::Buffer& getOGlBufferRef() const;
|
||||
cuda::HostMem& getHostMemRef() const;
|
||||
void create(Size sz, int type, int i=-1, bool allowTransposed=false, int fixedDepthMask=0) const;
|
||||
@@ -356,6 +362,7 @@ public:
|
||||
_InputOutputArray(const Mat& m);
|
||||
_InputOutputArray(const std::vector<Mat>& vec);
|
||||
_InputOutputArray(const cuda::GpuMat& d_mat);
|
||||
_InputOutputArray(const std::vector<cuda::GpuMat>& d_mat);
|
||||
_InputOutputArray(const ogl::Buffer& buf);
|
||||
_InputOutputArray(const cuda::HostMem& cuda_mem);
|
||||
template<typename _Tp> _InputOutputArray(const cudev::GpuMat_<_Tp>& m);
|
||||
|
@@ -110,6 +110,9 @@ inline _InputArray::_InputArray(const MatExpr& expr)
|
||||
inline _InputArray::_InputArray(const cuda::GpuMat& d_mat)
|
||||
{ init(CUDA_GPU_MAT + ACCESS_READ, &d_mat); }
|
||||
|
||||
inline _InputArray::_InputArray(const std::vector<cuda::GpuMat>& d_mat)
|
||||
{ init(STD_VECTOR_CUDA_GPU_MAT + ACCESS_READ, &d_mat);}
|
||||
|
||||
inline _InputArray::_InputArray(const ogl::Buffer& buf)
|
||||
{ init(OPENGL_BUFFER + ACCESS_READ, &buf); }
|
||||
|
||||
@@ -131,6 +134,7 @@ inline bool _InputArray::isMatVector() const { return kind() == _InputArray::STD
|
||||
inline bool _InputArray::isUMatVector() const { return kind() == _InputArray::STD_VECTOR_UMAT; }
|
||||
inline bool _InputArray::isMatx() const { return kind() == _InputArray::MATX; }
|
||||
inline bool _InputArray::isVector() const { return kind() == _InputArray::STD_VECTOR || kind() == _InputArray::STD_BOOL_VECTOR; }
|
||||
inline bool _InputArray::isGpuMatVector() const { return kind() == _InputArray::STD_VECTOR_CUDA_GPU_MAT; }
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -196,6 +200,9 @@ _OutputArray::_OutputArray(const _Tp* vec, int n)
|
||||
inline _OutputArray::_OutputArray(cuda::GpuMat& d_mat)
|
||||
{ init(CUDA_GPU_MAT + ACCESS_WRITE, &d_mat); }
|
||||
|
||||
inline _OutputArray::_OutputArray(std::vector<cuda::GpuMat>& d_mat)
|
||||
{ init(STD_VECTOR_CUDA_GPU_MAT + ACCESS_WRITE, &d_mat);}
|
||||
|
||||
inline _OutputArray::_OutputArray(ogl::Buffer& buf)
|
||||
{ init(OPENGL_BUFFER + ACCESS_WRITE, &buf); }
|
||||
|
||||
@@ -217,6 +224,7 @@ inline _OutputArray::_OutputArray(const std::vector<UMat>& vec)
|
||||
inline _OutputArray::_OutputArray(const cuda::GpuMat& d_mat)
|
||||
{ init(FIXED_TYPE + FIXED_SIZE + CUDA_GPU_MAT + ACCESS_WRITE, &d_mat); }
|
||||
|
||||
|
||||
inline _OutputArray::_OutputArray(const ogl::Buffer& buf)
|
||||
{ init(FIXED_TYPE + FIXED_SIZE + OPENGL_BUFFER + ACCESS_WRITE, &buf); }
|
||||
|
||||
@@ -306,6 +314,8 @@ inline _InputOutputArray::_InputOutputArray(const std::vector<UMat>& vec)
|
||||
|
||||
inline _InputOutputArray::_InputOutputArray(const cuda::GpuMat& d_mat)
|
||||
{ init(FIXED_TYPE + FIXED_SIZE + CUDA_GPU_MAT + ACCESS_RW, &d_mat); }
|
||||
inline _InputOutputArray::_InputOutputArray(const std::vector<cuda::GpuMat>& d_mat)
|
||||
{ init(FIXED_TYPE + FIXED_SIZE + STD_VECTOR_CUDA_GPU_MAT + ACCESS_RW, &d_mat);}
|
||||
|
||||
inline _InputOutputArray::_InputOutputArray(const ogl::Buffer& buf)
|
||||
{ init(FIXED_TYPE + FIXED_SIZE + OPENGL_BUFFER + ACCESS_RW, &buf); }
|
||||
|
Reference in New Issue
Block a user