Merge pull request #4738 from FearlessTobi/port-1020-new

Port yuzu-emu/yuzu#1020: "core: Namespace EmuWindow"
This commit is contained in:
James Rowe 2019-04-26 08:58:09 -06:00 committed by GitHub
commit 3f2c7eb471
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
14 changed files with 39 additions and 20 deletions

View file

@ -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();

View file

@ -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

View file

@ -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),

View file

@ -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;

View file

@ -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)

View file

@ -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)

View file

@ -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();

View file

@ -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();