mirror of
https://github.com/Laupetin/OpenAssetTools.git
synced 2025-04-21 16:45:44 +00:00
31 lines
1.1 KiB
C++
31 lines
1.1 KiB
C++
#pragma once
|
|
#include "AssetLoading/IAssetLoadingManager.h"
|
|
#include "Game/T6/T6.h"
|
|
#include "InfoString/InfoStringToStructConverterBase.h"
|
|
|
|
namespace T6
|
|
{
|
|
class InfoStringToStructConverter : public InfoStringToStructConverterBase
|
|
{
|
|
protected:
|
|
IAssetLoadingManager* m_loading_manager;
|
|
const cspField_t* m_fields;
|
|
size_t m_field_count;
|
|
|
|
static bool GetHashValue(const std::string& value, unsigned int& hash);
|
|
|
|
virtual bool ConvertExtensionField(const cspField_t& field, const std::string& value) = 0;
|
|
bool ConvertBaseField(const cspField_t& field, const std::string& value);
|
|
|
|
public:
|
|
InfoStringToStructConverter(const InfoString& infoString,
|
|
void* structure,
|
|
ZoneScriptStrings& zoneScriptStrings,
|
|
MemoryManager* memory,
|
|
IAssetLoadingManager* manager,
|
|
const cspField_t* fields,
|
|
size_t fieldCount);
|
|
bool Convert() override;
|
|
};
|
|
} // namespace T6
|