MethodResetCounter.cs 1.1 KB

12345678910111213141516171819202122232425262728293031
  1. using Ryujinx.Graphics.GAL;
  2. using Ryujinx.Graphics.Gpu.State;
  3. namespace Ryujinx.Graphics.Gpu.Engine
  4. {
  5. partial class Methods
  6. {
  7. /// <summary>
  8. /// Resets the value of a internal GPU counter back to zero.
  9. /// </summary>
  10. /// <param name="state">Current GPU state</param>
  11. /// <param name="argument">Method call argument</param>
  12. private void ResetCounter(GpuState state, int argument)
  13. {
  14. ResetCounterType type = (ResetCounterType)argument;
  15. switch (type)
  16. {
  17. case ResetCounterType.SamplesPassed:
  18. _context.Renderer.ResetCounter(CounterType.SamplesPassed);
  19. break;
  20. case ResetCounterType.PrimitivesGenerated:
  21. _context.Renderer.ResetCounter(CounterType.PrimitivesGenerated);
  22. break;
  23. case ResetCounterType.TransformFeedbackPrimitivesWritten:
  24. _context.Renderer.ResetCounter(CounterType.TransformFeedbackPrimitivesWritten);
  25. break;
  26. }
  27. }
  28. }
  29. }