mirror of
https://github.com/isledecomp/isle-portable.git
synced 2024-11-22 15:37:55 -05:00
implement misc presenter functions (#695)
* implement misc presenter functions * style/spacing --------- Co-authored-by: Christian Semmler <mail@csemmler.com>
This commit is contained in:
parent
fd1b371864
commit
277957f0d5
3 changed files with 41 additions and 7 deletions
|
@ -1,6 +1,8 @@
|
|||
#include "legoloadcachesoundpresenter.h"
|
||||
|
||||
#include "legocachsound.h"
|
||||
#include "legosoundmanager.h"
|
||||
#include "misc.h"
|
||||
#include "mxstreamchunk.h"
|
||||
#include "mxwavepresenter.h"
|
||||
|
||||
|
@ -69,9 +71,16 @@ void LegoLoadCacheSoundPresenter::DoneTickle()
|
|||
}
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x10018700
|
||||
// FUNCTION: LEGO1 0x10018700
|
||||
MxResult LegoLoadCacheSoundPresenter::PutData()
|
||||
{
|
||||
// TODO
|
||||
m_criticalSection.Enter();
|
||||
|
||||
if (m_currentTickleState == e_done) {
|
||||
m_cacheSound = SoundManager()->GetUnknown0x40()->FUN_1003d290(m_cacheSound);
|
||||
m_unk0x7c = 1;
|
||||
}
|
||||
|
||||
m_criticalSection.Leave();
|
||||
return SUCCESS;
|
||||
}
|
||||
|
|
|
@ -37,10 +37,22 @@ MxResult LegoPartPresenter::AddToManager()
|
|||
return SUCCESS;
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x1007c9d0
|
||||
// FUNCTION: LEGO1 0x1007c9d0
|
||||
void LegoPartPresenter::Destroy(MxBool p_fromDestructor)
|
||||
{
|
||||
// TODO
|
||||
m_criticalSection.Enter();
|
||||
VideoManager()->UnregisterPresenter(*this);
|
||||
|
||||
if (m_parts) {
|
||||
delete m_parts;
|
||||
m_parts = NULL;
|
||||
}
|
||||
m_parts = NULL;
|
||||
|
||||
m_criticalSection.Leave();
|
||||
if (!p_fromDestructor) {
|
||||
MxMediaPresenter::Destroy(FALSE);
|
||||
}
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x1007ca30
|
||||
|
|
|
@ -114,11 +114,24 @@ MxResult LegoTexturePresenter::Store()
|
|||
return SUCCESS;
|
||||
}
|
||||
|
||||
// STUB: LEGO1 0x1004fc60
|
||||
// FUNCTION: LEGO1 0x1004fc60
|
||||
MxResult LegoTexturePresenter::PutData()
|
||||
{
|
||||
// TODO
|
||||
return FAILURE;
|
||||
MxResult result = SUCCESS;
|
||||
|
||||
if (MxPresenter::IsEnabled() && m_currentChunk != NULL) {
|
||||
result = Read(*m_currentChunk);
|
||||
if (result == SUCCESS) {
|
||||
Store();
|
||||
}
|
||||
|
||||
if (m_currentTickleState == e_streaming) {
|
||||
m_subscriber->FreeDataChunk(m_currentChunk);
|
||||
}
|
||||
m_currentChunk = NULL;
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
// FUNCTION: LEGO1 0x1004fcb0
|
||||
|
|
Loading…
Reference in a new issue