summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar bunnei2018-01-10 22:26:00 -0500
committerGravatar bunnei2018-01-10 23:28:56 -0500
commit236d463c52afb4dbd3d36e3a34ff7fac5b4046d4 (patch)
tree5dd0e54ef5038b07e11703c1d92c7d1e3825e535 /src
parentrenderer_opengl: Add MortonCopyPixels function for Switch framebuffer. (diff)
downloadyuzu-236d463c52afb4dbd3d36e3a34ff7fac5b4046d4.tar.gz
yuzu-236d463c52afb4dbd3d36e3a34ff7fac5b4046d4.tar.xz
yuzu-236d463c52afb4dbd3d36e3a34ff7fac5b4046d4.zip
render_base: Add a struct describing framebuffer metadata.
Diffstat (limited to 'src')
-rw-r--r--src/video_core/renderer_base.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/video_core/renderer_base.h b/src/video_core/renderer_base.h
index 589aca857..f18917da3 100644
--- a/src/video_core/renderer_base.h
+++ b/src/video_core/renderer_base.h
@@ -15,6 +15,32 @@ public:
15 /// Used to reference a framebuffer 15 /// Used to reference a framebuffer
16 enum kFramebuffer { kFramebuffer_VirtualXFB = 0, kFramebuffer_EFB, kFramebuffer_Texture }; 16 enum kFramebuffer { kFramebuffer_VirtualXFB = 0, kFramebuffer_EFB, kFramebuffer_Texture };
17 17
18 /// Struct describing framebuffer metadata
19 struct FramebufferInfo {
20 enum class PixelFormat : u32 {
21 ABGR8 = 1,
22 };
23
24 /**
25 * Returns the number of bytes per pixel.
26 */
27 static u32 BytesPerPixel(PixelFormat format) {
28 switch (format) {
29 case PixelFormat::ABGR8:
30 return 4;
31 }
32
33 UNREACHABLE();
34 }
35
36 VAddr address;
37 u32 offset;
38 u32 width;
39 u32 height;
40 u32 stride;
41 PixelFormat pixel_format;
42 };
43
18 virtual ~RendererBase() {} 44 virtual ~RendererBase() {}
19 45
20 /// Swap buffers (render frame) 46 /// Swap buffers (render frame)