mirror of
				https://github.com/PabloMK7/citra.git
				synced 2025-10-31 13:50:03 +00:00 
			
		
		
		
	Merge pull request #4738 from FearlessTobi/port-1020-new
Port yuzu-emu/yuzu#1020: "core: Namespace EmuWindow"
This commit is contained in:
		
						commit
						3f2c7eb471
					
				
					 14 changed files with 39 additions and 20 deletions
				
			
		|  | @ -9,7 +9,7 @@ | |||
| #include "video_core/swrasterizer/swrasterizer.h" | ||||
| #include "video_core/video_core.h" | ||||
| 
 | ||||
| RendererBase::RendererBase(EmuWindow& window) : render_window{window} {} | ||||
| RendererBase::RendererBase(Frontend::EmuWindow& window) : render_window{window} {} | ||||
| RendererBase::~RendererBase() = default; | ||||
| void RendererBase::UpdateCurrentFramebufferLayout() { | ||||
|     const Layout::FramebufferLayout& layout = render_window.GetFramebufferLayout(); | ||||
|  |  | |||
|  | @ -9,14 +9,16 @@ | |||
| #include "core/core.h" | ||||
| #include "video_core/rasterizer_interface.h" | ||||
| 
 | ||||
| namespace Frontend { | ||||
| class EmuWindow; | ||||
| } | ||||
| 
 | ||||
| class RendererBase : NonCopyable { | ||||
| public: | ||||
|     /// Used to reference a framebuffer
 | ||||
|     enum kFramebuffer { kFramebuffer_VirtualXFB = 0, kFramebuffer_EFB, kFramebuffer_Texture }; | ||||
| 
 | ||||
|     explicit RendererBase(EmuWindow& window); | ||||
|     explicit RendererBase(Frontend::EmuWindow& window); | ||||
|     virtual ~RendererBase(); | ||||
| 
 | ||||
|     /// Swap buffers (render frame)
 | ||||
|  | @ -46,18 +48,18 @@ public: | |||
|         return rasterizer.get(); | ||||
|     } | ||||
| 
 | ||||
|     EmuWindow& GetRenderWindow() { | ||||
|     Frontend::EmuWindow& GetRenderWindow() { | ||||
|         return render_window; | ||||
|     } | ||||
| 
 | ||||
|     const EmuWindow& GetRenderWindow() const { | ||||
|     const Frontend::EmuWindow& GetRenderWindow() const { | ||||
|         return render_window; | ||||
|     } | ||||
| 
 | ||||
|     void RefreshRasterizerSetting(); | ||||
| 
 | ||||
| protected: | ||||
|     EmuWindow& render_window; ///< Reference to the render window handle.
 | ||||
|     Frontend::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
 | ||||
|  |  | |||
|  | @ -43,7 +43,7 @@ static bool IsVendorAmd() { | |||
|     return gpu_vendor == "ATI Technologies Inc." || gpu_vendor == "Advanced Micro Devices, Inc."; | ||||
| } | ||||
| 
 | ||||
| RasterizerOpenGL::RasterizerOpenGL(EmuWindow& window) | ||||
| RasterizerOpenGL::RasterizerOpenGL(Frontend::EmuWindow& window) | ||||
|     : is_amd(IsVendorAmd()), shader_dirty(true), | ||||
|       vertex_buffer(GL_ARRAY_BUFFER, VERTEX_BUFFER_SIZE, is_amd), | ||||
|       uniform_buffer(GL_UNIFORM_BUFFER, UNIFORM_BUFFER_SIZE, false), | ||||
|  |  | |||
|  | @ -29,14 +29,17 @@ | |||
| #include "video_core/renderer_opengl/pica_to_gl.h" | ||||
| #include "video_core/shader/shader.h" | ||||
| 
 | ||||
| namespace Frontend { | ||||
| class EmuWindow; | ||||
| } | ||||
| 
 | ||||
| class ShaderProgramManager; | ||||
| 
 | ||||
| namespace OpenGL { | ||||
| 
 | ||||
| class RasterizerOpenGL : public VideoCore::RasterizerInterface { | ||||
| public: | ||||
|     explicit RasterizerOpenGL(EmuWindow& renderer); | ||||
|     explicit RasterizerOpenGL(Frontend::EmuWindow& renderer); | ||||
|     ~RasterizerOpenGL() override; | ||||
| 
 | ||||
|     void AddTriangle(const Pica::Shader::OutputVertex& v0, const Pica::Shader::OutputVertex& v1, | ||||
|  | @ -261,7 +264,7 @@ private: | |||
| 
 | ||||
|     RasterizerCacheOpenGL res_cache; | ||||
| 
 | ||||
|     EmuWindow& emu_window; | ||||
|     Frontend::EmuWindow& emu_window; | ||||
| 
 | ||||
|     std::vector<HardwareVertex> vertex_batch; | ||||
| 
 | ||||
|  |  | |||
|  | @ -93,7 +93,7 @@ static std::array<GLfloat, 3 * 2> MakeOrthographicMatrix(const float width, cons | |||
|     return matrix; | ||||
| } | ||||
| 
 | ||||
| RendererOpenGL::RendererOpenGL(EmuWindow& window) : RendererBase{window} {} | ||||
| RendererOpenGL::RendererOpenGL(Frontend::EmuWindow& window) : RendererBase{window} {} | ||||
| RendererOpenGL::~RendererOpenGL() = default; | ||||
| 
 | ||||
| /// Swap buffers (render frame)
 | ||||
|  |  | |||
|  | @ -38,7 +38,7 @@ struct ScreenInfo { | |||
| 
 | ||||
| class RendererOpenGL : public RendererBase { | ||||
| public: | ||||
|     explicit RendererOpenGL(EmuWindow& window); | ||||
|     explicit RendererOpenGL(Frontend::EmuWindow& window); | ||||
|     ~RendererOpenGL() override; | ||||
| 
 | ||||
|     /// Swap buffers (render frame)
 | ||||
|  |  | |||
|  | @ -33,7 +33,7 @@ Layout::FramebufferLayout g_screenshot_framebuffer_layout; | |||
| Memory::MemorySystem* g_memory; | ||||
| 
 | ||||
| /// Initialize the video core
 | ||||
| Core::System::ResultStatus Init(EmuWindow& emu_window, Memory::MemorySystem& memory) { | ||||
| Core::System::ResultStatus Init(Frontend::EmuWindow& emu_window, Memory::MemorySystem& memory) { | ||||
|     g_memory = &memory; | ||||
|     Pica::Init(); | ||||
| 
 | ||||
|  |  | |||
|  | @ -9,7 +9,10 @@ | |||
| #include "core/core.h" | ||||
| #include "core/frontend/emu_window.h" | ||||
| 
 | ||||
| namespace Frontend { | ||||
| class EmuWindow; | ||||
| } | ||||
| 
 | ||||
| class RendererBase; | ||||
| 
 | ||||
| namespace Memory { | ||||
|  | @ -40,7 +43,7 @@ extern Layout::FramebufferLayout g_screenshot_framebuffer_layout; | |||
| extern Memory::MemorySystem* g_memory; | ||||
| 
 | ||||
| /// Initialize the video core
 | ||||
| Core::System::ResultStatus Init(EmuWindow& emu_window, Memory::MemorySystem& memory); | ||||
| Core::System::ResultStatus Init(Frontend::EmuWindow& emu_window, Memory::MemorySystem& memory); | ||||
| 
 | ||||
| /// Shutdown the video core
 | ||||
| void Shutdown(); | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue