/// <summary> /// Creates instance from cv::Ptr<T> . /// 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; }
/// <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; }
/// <summary> /// Creates instance from cv::Ptr<T> . /// 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); }
/// <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); }
/// <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)); }
/// <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)); }
/// <summary> /// /// </summary> /// <returns></returns> public static FrameSource CreateEmptySource() { IntPtr ptr = NativeMethods.superres_createFrameSource_Empty(); return(FrameSourceImpl.FromPtr(ptr)); }