2
0
mirror of https://github.com/Laupetin/OpenAssetTools.git synced 2026-06-07 01:02:35 +00:00

chore: generalize IAssetDumper interface

This commit is contained in:
Jan Laupetin
2025-10-15 20:06:01 +01:00
parent c6e9cbedda
commit 6a84d1ea68
152 changed files with 1051 additions and 586 deletions
@@ -1,9 +1,11 @@
#include "StructuredDataDefDumperIW4.h"
#include "StructuredDataDef/CommonStructuredDataDef.h"
#include "StructuredDataDef/StructuredDataDefDumper.h"
#include <algorithm>
#include <cassert>
#include <cstddef>
#include <sstream>
using namespace IW4;
@@ -185,7 +187,12 @@ namespace
namespace structured_data_def
{
void DumperIW4::DumpAsset(AssetDumpingContext& context, const XAssetInfo<StructuredDataDefSet>& asset)
DumperIW4::DumperIW4(const AssetPool<AssetStructuredDataDef::Type>& pool)
: AbstractAssetDumper(pool)
{
}
void DumperIW4::DumpAsset(AssetDumpingContext& context, const XAssetInfo<AssetStructuredDataDef::Type>& asset)
{
const auto* set = asset.Asset();
const auto assetFile = context.OpenAssetFile(asset.m_name);
@@ -2,15 +2,15 @@
#include "Dumping/AbstractAssetDumper.h"
#include "Game/IW4/IW4.h"
#include "StructuredDataDef/CommonStructuredDataDef.h"
#include <cstddef>
namespace structured_data_def
{
class DumperIW4 final : public AbstractAssetDumper<IW4::StructuredDataDefSet>
class DumperIW4 final : public AbstractAssetDumper<IW4::AssetStructuredDataDef>
{
public:
explicit DumperIW4(const AssetPool<IW4::AssetStructuredDataDef::Type>& pool);
protected:
void DumpAsset(AssetDumpingContext& context, const XAssetInfo<IW4::StructuredDataDefSet>& asset) override;
void DumpAsset(AssetDumpingContext& context, const XAssetInfo<IW4::AssetStructuredDataDef::Type>& asset) override;
};
} // namespace structured_data_def