/// <summary> /// /// </summary> /// <param name="m"></param> public CudaMem(CudaMem m) { ThrowIfNotAvailable(); if (m == null) throw new ArgumentNullException("m"); ptr = NativeMethods.gpu_CudaMem_new2(m.CvPtr); }
/// <summary> /// /// </summary> /// <param name="m"></param> public CudaMem(CudaMem m) { ThrowIfNotAvailable(); if (m == null) { throw new ArgumentNullException(nameof(m)); } ptr = NativeMethods.gpu_CudaMem_new2(m.CvPtr); }
/// <summary> /// /// </summary> /// <param name="target"></param> public void AssignTo(CudaMem target) { ThrowIfDisposed(); if (target == null) { throw new ArgumentNullException(nameof(target)); } NativeMethods.gpu_CudaMem_opAssign(target.CvPtr, ptr); }
/// <summary> /// Uploads asynchronously. /// Warning! cv::Mat must point to page locked memory (i.e. to CudaMem data or to its ROI) /// </summary> /// <param name="src"></param> /// <param name="dst"></param> public void EnqueueUpload(CudaMem src, GpuMat dst) { ThrowIfDisposed(); if (src == null) { throw new ArgumentNullException(nameof(src)); } if (dst == null) { throw new ArgumentNullException(nameof(dst)); } src.ThrowIfDisposed(); dst.ThrowIfDisposed(); NativeMethods.gpu_Stream_enqueueUpload_CudaMem(ptr, src.CvPtr, dst.CvPtr); }
/// <summary> /// Downloads asynchronously. /// Warning! cv::Mat must point to page locked memory (i.e. to CudaMem data or to its subMat) /// </summary> /// <param name="src"></param> /// <param name="dst"></param> public void EnqueueDownload(GpuMat src, CudaMem dst) { ThrowIfDisposed(); if (src == null) { throw new ArgumentNullException("src"); } if (dst == null) { throw new ArgumentNullException("dst"); } src.ThrowIfDisposed(); dst.ThrowIfDisposed(); NativeMethods.gpu_Stream_enqueueDownload_CudaMem(ptr, src.CvPtr, dst.CvPtr); }
/// <summary> /// Uploads asynchronously. /// Warning! cv::Mat must point to page locked memory (i.e. to CudaMem data or to its ROI) /// </summary> /// <param name="src"></param> /// <param name="dst"></param> public void EnqueueUpload(CudaMem src, GpuMat dst) { ThrowIfDisposed(); if (src == null) throw new ArgumentNullException("src"); if (dst == null) throw new ArgumentNullException("dst"); src.ThrowIfDisposed(); dst.ThrowIfDisposed(); NativeMethods.gpu_Stream_enqueueUpload_CudaMem(ptr, src.CvPtr, dst.CvPtr); }
/// <summary> /// /// </summary> /// <param name="target"></param> public void AssignTo(CudaMem target) { ThrowIfDisposed(); if (target == null) throw new ArgumentNullException("target"); NativeMethods.gpu_CudaMem_opAssign(target.CvPtr, ptr); }