diff options
Diffstat (limited to 'Ryujinx.Graphics/Gal/OpenGL/OGLConstBuffer.cs')
| -rw-r--r-- | Ryujinx.Graphics/Gal/OpenGL/OGLConstBuffer.cs | 74 |
1 files changed, 0 insertions, 74 deletions
diff --git a/Ryujinx.Graphics/Gal/OpenGL/OGLConstBuffer.cs b/Ryujinx.Graphics/Gal/OpenGL/OGLConstBuffer.cs deleted file mode 100644 index a12681c7..00000000 --- a/Ryujinx.Graphics/Gal/OpenGL/OGLConstBuffer.cs +++ /dev/null @@ -1,74 +0,0 @@ -using OpenTK.Graphics.OpenGL; -using System; - -namespace Ryujinx.Graphics.Gal.OpenGL -{ - class OGLConstBuffer : IGalConstBuffer - { - private const long MaxConstBufferCacheSize = 64 * 1024 * 1024; - - private OGLCachedResource<OGLStreamBuffer> Cache; - - public OGLConstBuffer() - { - Cache = new OGLCachedResource<OGLStreamBuffer>(DeleteBuffer, MaxConstBufferCacheSize); - } - - public void LockCache() - { - Cache.Lock(); - } - - public void UnlockCache() - { - Cache.Unlock(); - } - - public void Create(long Key, long Size) - { - OGLStreamBuffer Buffer = new OGLStreamBuffer(BufferTarget.UniformBuffer, Size); - - Cache.AddOrUpdate(Key, Buffer, Size); - } - - public bool IsCached(long Key, long Size) - { - return Cache.TryGetSize(Key, out long CachedSize) && CachedSize == Size; - } - - public void SetData(long Key, long Size, IntPtr HostAddress) - { - if (Cache.TryGetValue(Key, out OGLStreamBuffer Buffer)) - { - Buffer.SetData(Size, HostAddress); - } - } - - public void SetData(long Key, byte[] Data) - { - if (Cache.TryGetValue(Key, out OGLStreamBuffer Buffer)) - { - Buffer.SetData(Data); - } - } - - public bool TryGetUbo(long Key, out int UboHandle) - { - if (Cache.TryGetValue(Key, out OGLStreamBuffer Buffer)) - { - UboHandle = Buffer.Handle; - - return true; - } - - UboHandle = 0; - - return false; - } - - private static void DeleteBuffer(OGLStreamBuffer Buffer) - { - Buffer.Dispose(); - } - } -}
\ No newline at end of file |
