mirror of
https://github.com/isledecomp/isle.git
synced 2025-10-23 00:14:22 +00:00
Implement MxVideoManager::Destroy / destructor (#207)
* MxVideoManager::Destroy / destructor * Consistency * Add missing override
This commit is contained in:

committed by
GitHub

parent
f062543f87
commit
5ddfaab9e7
@@ -1,6 +1,8 @@
|
||||
#include "mxvideomanager.h"
|
||||
#include "mxautolocker.h"
|
||||
#include "mxpresenter.h"
|
||||
#include "mxticklemanager.h"
|
||||
#include "legoomni.h"
|
||||
|
||||
// OFFSET: LEGO1 0x100be1f0
|
||||
MxVideoManager::MxVideoManager()
|
||||
@@ -8,10 +10,10 @@ MxVideoManager::MxVideoManager()
|
||||
Init();
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100be2a0 STUB
|
||||
// OFFSET: LEGO1 0x100be2a0
|
||||
MxVideoManager::~MxVideoManager()
|
||||
{
|
||||
// TODO
|
||||
Destroy(TRUE);
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100bea90
|
||||
@@ -50,6 +52,41 @@ MxResult MxVideoManager::Init()
|
||||
return SUCCESS;
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100be340
|
||||
void MxVideoManager::Destroy(MxBool p_fromDestructor)
|
||||
{
|
||||
if (m_thread) {
|
||||
m_thread->Terminate();
|
||||
delete m_thread;
|
||||
}
|
||||
else
|
||||
TickleManager()->UnregisterClient(this);
|
||||
|
||||
m_criticalSection.Enter();
|
||||
|
||||
if (m_displaySurface)
|
||||
delete m_displaySurface;
|
||||
|
||||
if (m_region)
|
||||
delete m_region;
|
||||
|
||||
if (m_videoParam.GetPalette())
|
||||
delete m_videoParam.GetPalette();
|
||||
|
||||
if (m_unk60) {
|
||||
if (m_pDirectDraw)
|
||||
m_pDirectDraw->Release();
|
||||
if (m_pDDSurface)
|
||||
m_pDDSurface->Release();
|
||||
}
|
||||
|
||||
Init();
|
||||
m_criticalSection.Leave();
|
||||
|
||||
if (!p_fromDestructor)
|
||||
MxMediaManager::Destroy();
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100be440
|
||||
void MxVideoManager::SortPresenterList()
|
||||
{
|
||||
@@ -89,6 +126,12 @@ void MxVideoManager::UpdateRegion()
|
||||
// TODO
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100bea50
|
||||
void MxVideoManager::Destroy()
|
||||
{
|
||||
Destroy(FALSE);
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100bea60 STUB
|
||||
void MxVideoManager::InvalidateRect(MxRect32 &p_rect)
|
||||
{
|
||||
|
Reference in New Issue
Block a user