D3D12Renderer: fixed some compilation errors

Removed GSFrameBase2 and D3DGSFrame.
Added frame for NullRender.
Minor improvements and fixes
This commit is contained in:
DH 2015-10-05 03:42:48 +03:00
parent 1c890f85c5
commit 4fdeeace66
30 changed files with 609 additions and 677 deletions

View file

@ -10,3 +10,58 @@ draw_context_t GSFrameBase::new_context()
{
return std::shared_ptr<void>(make_context(), [this](void* ctxt) { delete_context(ctxt); });
}
void GSFrameBase::title_message(const std::wstring& msg)
{
m_title_message = msg;
}
GSRender::GSRender(frame_type type) : m_frame(Emu.GetCallbacks().get_gs_frame(type).release())
{
}
GSRender::~GSRender()
{
m_context = nullptr;
if (m_frame)
{
m_frame->close();
}
}
void GSRender::oninit()
{
if (m_frame)
{
m_frame->show();
}
}
void GSRender::oninit_thread()
{
if (m_frame)
{
m_context = m_frame->new_context();
m_frame->set_current(m_context);
}
}
void GSRender::close()
{
if (m_frame && m_frame->shown())
{
m_frame->hide();
}
if (joinable())
{
join();
}
}
void GSRender::flip(int buffer)
{
if (m_frame)
m_frame->flip(m_context);
}