Finish some missing methods (#448)

* Finish some missing methods

* Minor style updates/fixes

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
This commit is contained in:
Nathan M Gilbert
2024-01-17 12:08:48 -05:00
committed by GitHub
parent 240ca5570d
commit b25239f22d
8 changed files with 66 additions and 8 deletions

View File

@@ -47,6 +47,17 @@ MxDSMediaAction& MxDSMediaAction::operator=(MxDSMediaAction& p_dsMediaAction)
return *this;
}
// FUNCTION: LEGO1 0x100c8df0
MxDSAction* MxDSMediaAction::Clone()
{
MxDSMediaAction* clone = new MxDSMediaAction();
if (clone)
*clone = *this;
return clone;
}
// FUNCTION: LEGO1 0x100c8e80
void MxDSMediaAction::CopyMediaSrcPath(const char* p_mediaSrcPath)
{
@@ -64,6 +75,12 @@ void MxDSMediaAction::CopyMediaSrcPath(const char* p_mediaSrcPath)
this->m_mediaSrcPath = NULL;
}
// FUNCTION: LEGO1 0x100c8f00
undefined4 MxDSMediaAction::VTable0x14()
{
return MxDSAction::VTable0x14();
}
// FUNCTION: LEGO1 0x100c8f10
MxU32 MxDSMediaAction::GetSizeOnDisk()
{

View File

@@ -301,6 +301,23 @@ MxResult MxDiskStreamController::VTable0x20(MxDSAction* p_action)
return SUCCESS;
}
// FUNCTION: LEGO1 0x100c8120
void MxDiskStreamController::FUN_100c8120(MxDSAction* p_action)
{
VTable0x30(p_action);
if (m_provider) {
m_provider->VTable0x20(p_action);
}
while (TRUE) {
MxDSAction* found = m_unk0x54.Find(p_action, TRUE);
if (!found)
break;
delete found;
}
}
// FUNCTION: LEGO1 0x100c8160
MxResult MxDiskStreamController::VTable0x24(MxDSAction* p_action)
{

View File

@@ -121,6 +121,15 @@ MxStreamController* MxStreamer::GetOpenStream(const char* p_name)
return NULL;
}
// FUNCTION: LEGO1 0x100b98f0
void MxStreamer::FUN_100b98f0(MxDSAction* p_action)
{
MxStreamController* controller = GetOpenStream(p_action->GetAtomId().GetInternal());
if (controller && controller->IsA("MxDiskStreamController")) {
((MxDiskStreamController*) controller)->FUN_100c8120(p_action);
}
}
// FUNCTION: LEGO1 0x100b9930
MxResult MxStreamer::AddStreamControllerToOpenList(MxStreamController* p_stream)
{