TableRef.cs 530 B

12345678910111213141516171819202122
  1. namespace Ryujinx.Graphics.GAL.Multithreading.Model
  2. {
  3. struct TableRef<T>
  4. {
  5. private int _index;
  6. public TableRef(ThreadedRenderer renderer, T reference)
  7. {
  8. _index = renderer.AddTableRef(reference);
  9. }
  10. public T Get(ThreadedRenderer renderer)
  11. {
  12. return (T)renderer.RemoveTableRef(_index);
  13. }
  14. public T2 GetAs<T2>(ThreadedRenderer renderer) where T2 : T
  15. {
  16. return (T2)renderer.RemoveTableRef(_index);
  17. }
  18. }
  19. }