private void Dispose(bool disposing) { if (!disposed) { if (disposing) { NativeMethods.cvDestroyWindow(name); mouseCallback = null; drawCallback = null; if (trackbars != null) { trackbars.Clear(); trackbars = null; } disposed = true; } } }
internal static extern void cvSetOpenGlDrawCallback(string window_name, _CvOpenGlDrawCallback callback, IntPtr userdata);
/// <summary> /// Assigns a callback to draw OpenGL on top of the image display. /// Used only for windows with OpenGL support. /// </summary> /// <param name="callback"> /// The callback method that will be called every frame. /// </param> public void SetOpenGLDrawCallback(OpenGLDrawCallback callback) { drawCallback = userdata => callback(); NativeMethods.cvSetOpenGlDrawCallback(name, drawCallback, IntPtr.Zero); }