Move CreateStreamObject to proper location (#1249)

This commit is contained in:
Christian Semmler
2024-12-20 14:15:52 -07:00
committed by GitHub
parent c9acd9a49f
commit 5a61cf6566
8 changed files with 61 additions and 72 deletions

View File

@@ -5,6 +5,7 @@
#include "mxatom.h"
#include "mxcore.h"
class MxDSFile;
class MxPresenter;
// VTABLE: LEGO1 0x100dc868
@@ -104,5 +105,6 @@ protected:
};
MxDSObject* DeserializeDSObjectDispatch(MxU8*&, MxS16);
MxDSObject* CreateStreamObject(MxDSFile*, MxS16);
#endif // MXDSOBJECT_H

View File

@@ -2,8 +2,7 @@
#define MXDSSOURCE_H
#include "mxcore.h"
class MxDSBuffer;
#include "mxdsbuffer.h"
// VTABLE: LEGO1 0x100dc8c8
// SIZE 0x14
@@ -27,15 +26,26 @@ public:
return !strcmp(p_name, MxDSSource::ClassName()) || MxCore::IsA(p_name);
}
virtual MxLong Open(MxULong) = 0; // vtable+0x14
virtual MxLong Close() = 0; // vtable+0x18
virtual MxResult ReadToBuffer(MxDSBuffer* p_buffer); // vtable+0x1c
virtual MxResult Read(unsigned char*, MxULong) = 0; // vtable+0x20
virtual MxLong Seek(MxLong, MxS32) = 0; // vtable+0x24
virtual MxULong GetBufferSize() = 0; // vtable+0x28
virtual MxULong GetStreamBuffersNum() = 0; // vtable+0x2c
virtual MxLong GetLengthInDWords(); // vtable+0x30
virtual MxU32* GetBuffer(); // vtable+0x34
virtual MxLong Open(MxULong) = 0; // vtable+0x14
virtual MxLong Close() = 0; // vtable+0x18
// FUNCTION: LEGO1 0x100bffd0
virtual MxResult ReadToBuffer(MxDSBuffer* p_buffer)
{
return Read(p_buffer->GetBuffer(), p_buffer->GetWriteOffset());
} // vtable+0x1c
virtual MxResult Read(unsigned char*, MxULong) = 0; // vtable+0x20
virtual MxLong Seek(MxLong, MxS32) = 0; // vtable+0x24
virtual MxULong GetBufferSize() = 0; // vtable+0x28
virtual MxULong GetStreamBuffersNum() = 0; // vtable+0x2c
// FUNCTION: LEGO1 0x100bfff0
virtual MxLong GetLengthInDWords() { return m_lengthInDWords; } // vtable+0x30
// FUNCTION: LEGO1 0x100c0000
virtual MxU32* GetBuffer() { return m_pBuffer; } // vtable+0x34
MxLong GetPosition() const { return m_position; }
protected:

View File

@@ -76,7 +76,6 @@ void OmniError(const char* p_message, MxS32 p_status);
void SetOmniUserMessage(void (*p_omniUserMessage)(const char*, MxS32));
MxBool ContainsPresenter(MxCompositePresenterList& p_presenterList, MxPresenter* p_presenter);
void FUN_100b7220(MxDSAction* p_action, MxU32 p_newFlags, MxBool p_setFlags);
MxDSObject* CreateStreamObject(MxDSFile*, MxS16);
MxBool KeyValueStringParse(char*, const char*, const char*);
#endif // MXUTILITIES_H