ITexture.cs 581 B

123456789101112131415161718192021
  1. using System;
  2. namespace Ryujinx.Graphics.GAL
  3. {
  4. public interface ITexture : IDisposable
  5. {
  6. int Width { get; }
  7. int Height { get; }
  8. float ScaleFactor { get; }
  9. void CopyTo(ITexture destination, int firstLayer, int firstLevel);
  10. void CopyTo(ITexture destination, Extents2D srcRegion, Extents2D dstRegion, bool linearFilter);
  11. ITexture CreateView(TextureCreateInfo info, int firstLayer, int firstLevel);
  12. byte[] GetData();
  13. void SetData(ReadOnlySpan<byte> data);
  14. void SetStorage(BufferRange buffer);
  15. }
  16. }