IRenderer.cs 627 B

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