// Copyright (c) ppy Pty Ltd . Licensed under the MIT Licence. // See the LICENCE file in the repository root for full licence text. namespace osu.Framework.Platform { /// /// Provides an implementation-agnostic interface on the backing graphics API. /// public interface IGraphicsBackend { /// /// Whether buffer swapping should be synced to the monitor's refresh rate. /// bool VerticalSync { get; set; } /// /// Initialises the graphics backend, given the current window backend. /// It is assumed that the window backend has been initialised. /// /// The being used for display. void Initialise(IWindow window); /// /// Performs a backbuffer swap immediately if is false, /// or on the next screen refresh if true. /// void SwapBuffers(); /// /// Makes the graphics backend the current context, if appropriate for the driver. /// void MakeCurrent(); /// /// Clears the current context, if appropriate for the driver. /// void ClearCurrent(); } }