mirror of
https://github.com/isledecomp/isle.git
synced 2025-10-24 17:04:17 +00:00
Use reference on MxDSObject Deserialize calls (#767)
This commit is contained in:
@@ -45,7 +45,7 @@ public:
|
||||
|
||||
undefined4 VTable0x14() override; // vtable+14;
|
||||
MxU32 GetSizeOnDisk() override; // vtable+18;
|
||||
void Deserialize(MxU8** p_source, MxS16 p_unk0x24) override; // vtable+1c;
|
||||
void Deserialize(MxU8*& p_source, MxS16 p_unk0x24) override; // vtable+1c;
|
||||
virtual MxLong GetDuration(); // vtable+24;
|
||||
virtual void SetDuration(MxLong p_duration); // vtable+28;
|
||||
virtual MxDSAction* Clone(); // vtable+2c;
|
||||
|
||||
@@ -33,7 +33,7 @@ public:
|
||||
|
||||
undefined4 VTable0x14() override; // vtable+14;
|
||||
MxU32 GetSizeOnDisk() override; // vtable+18;
|
||||
void Deserialize(MxU8** p_source, MxS16 p_unk0x24) override; // vtable+1c;
|
||||
void Deserialize(MxU8*& p_source, MxS16 p_unk0x24) override; // vtable+1c;
|
||||
MxDSAction* Clone() override; // vtable+2c;
|
||||
|
||||
void CopyMediaSrcPath(const char* p_mediaSrcPath);
|
||||
|
||||
@@ -29,7 +29,7 @@ public:
|
||||
|
||||
undefined4 VTable0x14() override; // vtable+14;
|
||||
MxU32 GetSizeOnDisk() override; // vtable+18;
|
||||
void Deserialize(MxU8** p_source, MxS16 p_unk0x24) override; // vtable+1c;
|
||||
void Deserialize(MxU8*& p_source, MxS16 p_unk0x24) override; // vtable+1c;
|
||||
void SetAtomId(MxAtomId p_atomId) override; // vtable+20;
|
||||
MxDSAction* Clone() override; // vtable+2c;
|
||||
void MergeFrom(MxDSAction& p_dsAction) override; // vtable+30;
|
||||
|
||||
@@ -46,7 +46,7 @@ public:
|
||||
|
||||
virtual undefined4 VTable0x14(); // vtable+14;
|
||||
virtual MxU32 GetSizeOnDisk(); // vtable+18;
|
||||
virtual void Deserialize(MxU8** p_source, MxS16 p_unk0x24); // vtable+1c;
|
||||
virtual void Deserialize(MxU8*& p_source, MxS16 p_unk0x24); // vtable+1c;
|
||||
inline virtual void SetAtomId(MxAtomId p_atomId) { this->m_atomId = p_atomId; } // vtable+20;
|
||||
|
||||
inline Type GetType() const { return (Type) this->m_type; }
|
||||
@@ -79,7 +79,7 @@ private:
|
||||
MxPresenter* m_unk0x28; // 0x28
|
||||
};
|
||||
|
||||
MxDSObject* DeserializeDSObjectDispatch(MxU8**, MxS16);
|
||||
MxDSObject* DeserializeDSObjectDispatch(MxU8*&, MxS16);
|
||||
|
||||
// FUNCTION: ISLE 0x401c40
|
||||
// MxDSObject::SetAtomId
|
||||
|
||||
@@ -29,7 +29,7 @@ public:
|
||||
}
|
||||
|
||||
MxU32 GetSizeOnDisk() override; // vtable+18;
|
||||
void Deserialize(MxU8** p_source, MxS16 p_unk0x24) override; // vtable+1c;
|
||||
void Deserialize(MxU8*& p_source, MxS16 p_unk0x24) override; // vtable+1c;
|
||||
MxDSAction* Clone() override; // vtable+2c;
|
||||
|
||||
// SYNTHETIC: LEGO1 0x100cb840
|
||||
|
||||
@@ -27,7 +27,7 @@ public:
|
||||
}
|
||||
|
||||
MxU32 GetSizeOnDisk() override; // vtable+18;
|
||||
void Deserialize(MxU8** p_source, MxS16 p_unk0x24) override; // vtable+1c;
|
||||
void Deserialize(MxU8*& p_source, MxS16 p_unk0x24) override; // vtable+1c;
|
||||
MxDSAction* Clone() override; // vtable+2c;
|
||||
|
||||
inline MxS32 GetVolume() const { return m_volume; }
|
||||
|
||||
@@ -30,32 +30,32 @@ inline T Max(T p_t1, T p_t2)
|
||||
}
|
||||
|
||||
template <class T>
|
||||
inline void GetScalar(MxU8** p_source, T& p_dest)
|
||||
inline void GetScalar(MxU8*& p_source, T& p_dest)
|
||||
{
|
||||
p_dest = *(T*) *p_source;
|
||||
*p_source += sizeof(T);
|
||||
p_dest = *(T*) p_source;
|
||||
p_source += sizeof(T);
|
||||
}
|
||||
|
||||
template <class T>
|
||||
inline T GetScalar(T** p_source)
|
||||
inline T GetScalar(T*& p_source)
|
||||
{
|
||||
T val = **p_source;
|
||||
*p_source += 1;
|
||||
T val = *p_source;
|
||||
p_source += 1;
|
||||
return val;
|
||||
}
|
||||
|
||||
template <class T>
|
||||
inline void GetDouble(MxU8** p_source, T& p_dest)
|
||||
inline void GetDouble(MxU8*& p_source, T& p_dest)
|
||||
{
|
||||
p_dest = *(double*) *p_source;
|
||||
*p_source += sizeof(double);
|
||||
p_dest = *(double*) p_source;
|
||||
p_source += sizeof(double);
|
||||
}
|
||||
|
||||
template <class T>
|
||||
inline void GetString(MxU8** p_source, char** p_dest, T* p_obj, void (T::*p_setter)(const char*))
|
||||
inline void GetString(MxU8*& p_source, char*& p_dest, T* p_obj, void (T::*p_setter)(const char*))
|
||||
{
|
||||
(p_obj->*p_setter)((char*) *p_source);
|
||||
*p_source += strlen(*p_dest) + 1;
|
||||
(p_obj->*p_setter)((char*) p_source);
|
||||
p_source += strlen(p_dest) + 1;
|
||||
}
|
||||
|
||||
MxBool GetRectIntersection(
|
||||
|
||||
Reference in New Issue
Block a user