summaryrefslogtreecommitdiffstats
path: root/src/video_core/textures/decoders.h
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2018-03-25 22:28:24 +0200
committerGitHub <noreply@github.com>2018-03-25 22:28:24 +0200
commite9315ace9f7f541d251a995ff2d4d3513ddc16c4 (patch)
treeba32de7358ed98e1230c1f522a5c7ba35d7ab19e /src/video_core/textures/decoders.h
parentMerge pull request #281 from mailwl/sockets-services (diff)
parentGPU: Make the debug_context variable a member of the frontend instead of a global. (diff)
downloadyuzu-e9315ace9f7f541d251a995ff2d4d3513ddc16c4.tar
yuzu-e9315ace9f7f541d251a995ff2d4d3513ddc16c4.tar.gz
yuzu-e9315ace9f7f541d251a995ff2d4d3513ddc16c4.tar.bz2
yuzu-e9315ace9f7f541d251a995ff2d4d3513ddc16c4.tar.lz
yuzu-e9315ace9f7f541d251a995ff2d4d3513ddc16c4.tar.xz
yuzu-e9315ace9f7f541d251a995ff2d4d3513ddc16c4.tar.zst
yuzu-e9315ace9f7f541d251a995ff2d4d3513ddc16c4.zip
Diffstat (limited to 'src/video_core/textures/decoders.h')
-rw-r--r--src/video_core/textures/decoders.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/video_core/textures/decoders.h b/src/video_core/textures/decoders.h
new file mode 100644
index 000000000..0c21694ff
--- /dev/null
+++ b/src/video_core/textures/decoders.h
@@ -0,0 +1,26 @@
+// Copyright 2018 yuzu Emulator Project
+// Licensed under GPLv2 or any later version
+// Refer to the license.txt file included.
+
+#pragma once
+
+#include <vector>
+#include "common/common_types.h"
+#include "video_core/textures/texture.h"
+
+namespace Tegra {
+namespace Texture {
+
+/**
+ * Unswizzles a swizzled texture without changing its format.
+ */
+std::vector<u8> UnswizzleTexture(VAddr address, TextureFormat format, u32 width, u32 height);
+
+/**
+ * Decodes an unswizzled texture into a A8R8G8B8 texture.
+ */
+std::vector<u8> DecodeTexture(const std::vector<u8>& texture_data, TextureFormat format, u32 width,
+ u32 height);
+
+} // namespace Texture
+} // namespace Tegra