示例#1
0
 /// <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);
 }
示例#2
0
 /// <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);
 }
示例#3
0
 /// <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);
 }
示例#4
0
        /// <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);
        }
示例#5
0
        /// <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);
        }
示例#6
0
文件: Stream.cs 项目: 0sv/opencvsharp
        /// <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);
        }
示例#7
0
 /// <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);
 }