From 48f6570557fc76496936514d94e3ccddf55ec633 Mon Sep 17 00:00:00 2001
From: Mary <me@thog.eu>
Date: Fri, 13 Nov 2020 00:15:34 +0100
Subject: Salieri: shader cache (#1701)

Here come Salieri, my implementation of a disk shader cache!

"I'm sure you know why I named it that."
"It doesn't really mean anything."

This implementation collects shaders at runtime and cache them to be later compiled when starting a game.
---
 .../Shader/Cache/Definition/CacheGraphicsApi.cs    | 38 ++++++++++++++++++++++
 1 file changed, 38 insertions(+)
 create mode 100644 Ryujinx.Graphics.Gpu/Shader/Cache/Definition/CacheGraphicsApi.cs

(limited to 'Ryujinx.Graphics.Gpu/Shader/Cache/Definition/CacheGraphicsApi.cs')

diff --git a/Ryujinx.Graphics.Gpu/Shader/Cache/Definition/CacheGraphicsApi.cs b/Ryujinx.Graphics.Gpu/Shader/Cache/Definition/CacheGraphicsApi.cs
new file mode 100644
index 00000000..9f8b5c39
--- /dev/null
+++ b/Ryujinx.Graphics.Gpu/Shader/Cache/Definition/CacheGraphicsApi.cs
@@ -0,0 +1,38 @@
+namespace Ryujinx.Graphics.Gpu.Shader.Cache.Definition
+{
+    /// <summary>
+    /// Graphics API type accepted by the shader cache.
+    /// </summary>
+    enum CacheGraphicsApi : byte
+    {
+        /// <summary>
+        /// OpenGL Core
+        /// </summary>
+        OpenGL,
+
+        /// <summary>
+        /// OpenGL ES
+        /// </summary>
+        OpenGLES,
+
+        /// <summary>
+        /// Vulkan
+        /// </summary>
+        Vulkan,
+
+        /// <summary>
+        /// DirectX
+        /// </summary>
+        DirectX,
+
+        /// <summary>
+        /// Metal
+        /// </summary>
+        Metal,
+
+        /// <summary>
+        /// Guest, used to cache games raw shader programs.
+        /// </summary>
+        Guest
+    }
+}
-- 
cgit v1.2.3-70-g09d2