예제 #1
0
 /// <summary>
 /// Creates instance from cv::Ptr&lt;T&gt; .
 /// ptr is disposed when the wrapper disposes. 
 /// </summary>
 /// <param name="ptr"></param>
 internal static FrameSource FromPtr(IntPtr ptr)
 {
     if (ptr == IntPtr.Zero)
         throw new OpenCvSharpException("Invalid FrameSource pointer");
     var obj = new FrameSourceImpl();
     var ptrObj = new Ptr<FrameSource>(ptr);
     obj.detectorPtr = ptrObj;
     obj.ptr = ptrObj.Obj;
     return obj;
 }
예제 #2
0
 /// <summary>
 /// Creates instance from raw pointer T*
 /// </summary>
 /// <param name="ptr"></param>
 internal static FrameSource FromRawPtr(IntPtr ptr)
 {
     if (ptr == IntPtr.Zero)
         throw new OpenCvSharpException("Invalid FrameSource pointer");
     var obj = new FrameSourceImpl
         {
             detectorPtr = null,
             ptr = ptr
         };
     return obj;
 }
예제 #3
0
        /// <summary>
        /// Creates instance from cv::Ptr&lt;T&gt; .
        /// ptr is disposed when the wrapper disposes.
        /// </summary>
        /// <param name="ptr"></param>
        internal static FrameSource FromPtr(IntPtr ptr)
        {
            if (ptr == IntPtr.Zero)
            {
                throw new OpenCvSharpException("Invalid FrameSource pointer");
            }
            var obj    = new FrameSourceImpl();
            var ptrObj = new Ptr <FrameSource>(ptr);

            obj.detectorPtr = ptrObj;
            obj.ptr         = ptrObj.Obj;
            return(obj);
        }
예제 #4
0
        /// <summary>
        /// Creates instance from raw pointer T*
        /// </summary>
        /// <param name="ptr"></param>
        internal static FrameSource FromRawPtr(IntPtr ptr)
        {
            if (ptr == IntPtr.Zero)
            {
                throw new OpenCvSharpException("Invalid FrameSource pointer");
            }
            var obj = new FrameSourceImpl
            {
                detectorPtr = null,
                ptr         = ptr
            };

            return(obj);
        }
예제 #5
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="fileName"></param>
        /// <returns></returns>
        public static FrameSource CreateVideoSourceGpu(string fileName)
        {
            if (String.IsNullOrEmpty("fileName"))
            {
                throw new ArgumentNullException("fileName");
            }
            if (!File.Exists(fileName))
            {
                throw new FileNotFoundException("", fileName);
            }
            IntPtr ptr = NativeMethods.superres_createFrameSource_Video_GPU(fileName);

            return(FrameSourceImpl.FromPtr(ptr));
        }
예제 #6
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="deviceId"></param>
        /// <returns></returns>
        public static FrameSource CreateCameraSource(int deviceId)
        {
            IntPtr ptr = NativeMethods.superres_createFrameSource_Camera(deviceId);

            return(FrameSourceImpl.FromPtr(ptr));
        }
예제 #7
0
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        public static FrameSource CreateEmptySource()
        {
            IntPtr ptr = NativeMethods.superres_createFrameSource_Empty();

            return(FrameSourceImpl.FromPtr(ptr));
        }