mirror of
https://github.com/isledecomp/isle.git
synced 2025-10-23 08:24:16 +00:00
Implement chunk parsing (#362)
* partial parsechunk implementation * fix format * param name fix * rename functions * match MxStreamController::RemoveSubscriber * implement rest of MxDSBuffer * Fixes and better matches * Matche ParseChunk 100% * Match MxDiskStreamProvider::VTable0x20 * Match MxDSBuffer::CalcBytesRemaining * Minor stuff * Minor improvements * Refactor functions --------- Co-authored-by: Christian Semmler <mail@csemmler.com>
This commit is contained in:
@@ -2,8 +2,10 @@
|
||||
#define MXSTREAMCHUNK_H
|
||||
|
||||
#include "mxdschunk.h"
|
||||
#include "mxdsobject.h"
|
||||
|
||||
class MxDSBuffer;
|
||||
class MxStreamListMxDSSubscriber;
|
||||
|
||||
// VTABLE: LEGO1 0x100dc2a8
|
||||
// SIZE 0x20
|
||||
@@ -29,8 +31,14 @@ public:
|
||||
|
||||
MxResult ReadChunk(MxDSBuffer* p_buffer, MxU8* p_chunkData);
|
||||
MxU32 ReadChunkHeader(MxU8* p_chunkData);
|
||||
MxResult SendChunk(MxStreamListMxDSSubscriber& p_subscriberList, MxBool p_append, MxS16 p_obj24val);
|
||||
void SetBuffer(MxDSBuffer* p_buffer);
|
||||
|
||||
static MxU16* IntoFlags(MxU8* p_buffer);
|
||||
static MxU32* IntoPlus0x12(MxU8* p_buffer);
|
||||
static MxU32* IntoPlus0xa(MxU8* p_buffer);
|
||||
static MxU32* IntoPlus0xe(MxU8* p_buffer);
|
||||
|
||||
private:
|
||||
MxDSBuffer* m_buffer; // 0x1c
|
||||
};
|
||||
|
Reference in New Issue
Block a user