CachedShader.cs 987 B

12345678910111213141516171819202122232425262728293031323334353637
  1. using Ryujinx.Graphics.GAL;
  2. using Ryujinx.Graphics.Shader;
  3. namespace Ryujinx.Graphics.Gpu.Shader
  4. {
  5. /// <summary>
  6. /// Cached shader code for a single shader stage.
  7. /// </summary>
  8. class CachedShader
  9. {
  10. /// <summary>
  11. /// Shader program containing translated code.
  12. /// </summary>
  13. public ShaderProgram Program { get; }
  14. /// <summary>
  15. /// Host shader object.
  16. /// </summary>
  17. public IShader HostShader { get; set; }
  18. /// <summary>
  19. /// Maxwell binary shader code.
  20. /// </summary>
  21. public int[] Code { get; }
  22. /// <summary>
  23. /// Creates a new instace of the cached shader.
  24. /// </summary>
  25. /// <param name="program">Shader program</param>
  26. /// <param name="code">Maxwell binary shader code</param>
  27. public CachedShader(ShaderProgram program, int[] code)
  28. {
  29. Program = program;
  30. Code = code;
  31. }
  32. }
  33. }