internal Display(DISPMANX_DISPLAY_HANDLE_T handle) { this.m_handle = handle; this.m_infosLoader = new Lazy <DISPMANX_MODEINFO_T>(this.GetInfos); this.m_RectangleLoader = new Lazy <Rectangle>(this.GetRectangle); }
/// <summary> /// Opens a display on the given device /// </summary> /// <param name="device"></param> /// <returns></returns> public Display DisplayOpen(Screen device) { DISPMANX_DISPLAY_HANDLE_T handle = NativeMethods.DisplayOpen((DISPMAN_ID)(int)device); if (handle.Handle == IntPtr.Zero) { return(null); } return(new Display(handle)); }
/// <summary> /// Opens an offscreen display /// </summary> /// <param name="dest"></param> /// <param name="orientation"></param> /// <returns></returns> public Display DisplayOpenOffscreen(Resource dest, DISPMANX_TRANSFORM_T orientation) { DISPMANX_DISPLAY_HANDLE_T handle = NativeMethods.DisplayOpenOffscreen(dest.Handle, orientation); if (handle.Handle == IntPtr.Zero) { return(null); } return(new Display(handle)); }