Ryujinx/Ryujinx.Graphics.GAL/IRenderer.cs

32 lines
705 B
C#
Raw Normal View History

2019-10-13 08:02:07 +02:00
using Ryujinx.Graphics.Shader;
2019-12-31 23:09:49 +01:00
using System;
2019-10-13 08:02:07 +02:00
namespace Ryujinx.Graphics.GAL
{
2019-12-31 23:09:49 +01:00
public interface IRenderer : IDisposable
2019-10-13 08:02:07 +02:00
{
IPipeline Pipeline { get; }
2019-10-13 08:02:07 +02:00
IWindow Window { get; }
IShader CompileShader(ShaderProgram shader);
IBuffer CreateBuffer(int size);
IProgram CreateProgram(IShader[] shaders);
ISampler CreateSampler(SamplerCreateInfo info);
ITexture CreateTexture(TextureCreateInfo info);
Capabilities GetCapabilities();
void UpdateCounters();
2019-10-13 08:02:07 +02:00
ICounterEvent ReportCounter(CounterType type, EventHandler<ulong> resultHandler);
2019-10-13 08:02:07 +02:00
void ResetCounter(CounterType type);
void Initialize();
2019-10-13 08:02:07 +02:00
}
}