Dump CommonStructuredDataDefSet instead of the game's internal structures

This commit is contained in:
Jan
2022-03-19 23:39:50 +01:00
parent c38367d55b
commit b2140260a4
11 changed files with 339 additions and 19 deletions

View File

@ -11,3 +11,9 @@ CommonStructuredDataDef::CommonStructuredDataDef(const int version)
m_size_in_byte(0u)
{
}
size_t CommonStructuredDataDef::CalculateChecksum() const
{
// TODO: Implement
return 0u;
}

View File

@ -21,4 +21,6 @@ public:
CommonStructuredDataDef();
explicit CommonStructuredDataDef(int version);
size_t CalculateChecksum() const;
};

View File

@ -1,5 +1,7 @@
#include "CommonStructuredDataEnum.h"
#include <algorithm>
CommonStructuredDataEnumEntry::CommonStructuredDataEnumEntry()
: m_value(0u)
{
@ -32,3 +34,11 @@ size_t CommonStructuredDataEnum::ElementCount() const
{
return m_reserved_entry_count > 0 ? static_cast<size_t>(m_reserved_entry_count) : m_entries.size();
}
void CommonStructuredDataEnum::SortEntries()
{
std::sort(m_entries.begin(), m_entries.end(), [](const CommonStructuredDataEnumEntry& e1, const CommonStructuredDataEnumEntry& e2)
{
return e1.m_value < e2.m_value;
});
}

View File

@ -25,4 +25,6 @@ struct CommonStructuredDataEnum
CommonStructuredDataEnum(std::string name, int reservedEntryCount);
_NODISCARD size_t ElementCount() const;
void SortEntries();
};

View File

@ -1,5 +1,7 @@
#include "CommonStructuredDataStruct.h"
#include <algorithm>
CommonStructuredDataStructEntry::CommonStructuredDataStructEntry()
: m_offset_in_bits(0u)
{
@ -30,3 +32,11 @@ CommonStructuredDataStruct::CommonStructuredDataStruct(std::string name)
m_size_in_byte(0u)
{
}
void CommonStructuredDataStruct::SortProperties()
{
std::sort(m_properties.begin(), m_properties.end(), [](const CommonStructuredDataStructEntry& e1, const CommonStructuredDataStructEntry& e2)
{
return e1.m_offset_in_bits < e2.m_offset_in_bits;
});
}

View File

@ -25,4 +25,6 @@ struct CommonStructuredDataStruct
CommonStructuredDataStruct();
explicit CommonStructuredDataStruct(std::string name);
void SortProperties();
};