IRenderer.cs 711 B

1234567891011121314151617181920212223242526272829303132
  1. using Ryujinx.Graphics.GAL.Sampler;
  2. using Ryujinx.Graphics.GAL.Texture;
  3. using Ryujinx.Graphics.Shader;
  4. namespace Ryujinx.Graphics.GAL
  5. {
  6. public interface IRenderer
  7. {
  8. IPipeline Pipeline { get; }
  9. IWindow Window { get; }
  10. IShader CompileShader(ShaderProgram shader);
  11. IBuffer CreateBuffer(int size);
  12. IProgram CreateProgram(IShader[] shaders);
  13. ISampler CreateSampler(SamplerCreateInfo info);
  14. ITexture CreateTexture(TextureCreateInfo info);
  15. void FlushPipelines();
  16. Capabilities GetCapabilities();
  17. ulong GetCounter(CounterType type);
  18. void InitializeCounters();
  19. void ResetCounter(CounterType type);
  20. }
  21. }