using System; using System.Threading.Tasks; using PixiEditor.DrawingApi.Core.Bridge.NativeObjectsImpl; using PixiEditor.DrawingApi.Core.Bridge.Operations; using PixiEditor.DrawingApi.Core.Surfaces; namespace PixiEditor.DrawingApi.Core.Bridge { public interface IDrawingBackend { public void Setup(); public IColorImplementation ColorImplementation { get; } public IImageImplementation ImageImplementation { get; } public ICanvasImplementation CanvasImplementation { get; } public IPaintImplementation PaintImplementation { get; } public IVectorPathImplementation PathImplementation { get; } public IMatrix3X3Implementation MatrixImplementation { get; } public IPixmapImplementation PixmapImplementation { get; } public ISurfaceImplementation SurfaceImplementation { get; } public IColorSpaceImplementation ColorSpaceImplementation { get; } public IImgDataImplementation ImgDataImplementation { get; } public IBitmapImplementation BitmapImplementation { get; } public IColorFilterImplementation ColorFilterImplementation { get; } public IImageFilterImplementation ImageFilterImplementation { get; } public IShaderImplementation ShaderImplementation { get; set; } public bool IsHardwareAccelerated { get; } public IRenderingServer RenderingDispatcher { get; set; } } }