summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_base.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/video_core/renderer_base.h')
-rw-r--r--src/video_core/renderer_base.h15
1 files changed, 6 insertions, 9 deletions
diff --git a/src/video_core/renderer_base.h b/src/video_core/renderer_base.h
index 89a960eaf..1cb161b7f 100644
--- a/src/video_core/renderer_base.h
+++ b/src/video_core/renderer_base.h
@@ -18,23 +18,21 @@ public:
/// Used to reference a framebuffer
enum kFramebuffer { kFramebuffer_VirtualXFB = 0, kFramebuffer_EFB, kFramebuffer_Texture };
- virtual ~RendererBase() {}
+ explicit RendererBase(EmuWindow& window);
+ virtual ~RendererBase();
/// Swap buffers (render frame)
virtual void SwapBuffers(boost::optional<const Tegra::FramebufferConfig&> framebuffer) = 0;
- /**
- * Set the emulator window to use for renderer
- * @param window EmuWindow handle to emulator window to use for rendering
- */
- virtual void SetWindow(EmuWindow* window) = 0;
-
/// Initialize the renderer
virtual bool Init() = 0;
/// Shutdown the renderer
virtual void ShutDown() = 0;
+ /// Updates the framebuffer layout of the contained render window handle.
+ void UpdateCurrentFramebufferLayout();
+
// Getter/setter functions:
// ------------------------
@@ -53,9 +51,8 @@ public:
void RefreshRasterizerSetting();
protected:
+ EmuWindow& render_window; ///< Reference to the render window handle.
std::unique_ptr<VideoCore::RasterizerInterface> rasterizer;
f32 m_current_fps = 0.0f; ///< Current framerate, should be set by the renderer
int m_current_frame = 0; ///< Current frame, should be set by the renderer
-
-private:
};