2
0
mirror of https://github.com/Laupetin/OpenAssetTools.git synced 2025-07-04 02:01:51 +00:00

feat: add post processors compiling iwds and ipaks

This commit is contained in:
Jan
2025-01-02 12:48:57 +01:00
parent b5937ef975
commit a7254aa11c
26 changed files with 480 additions and 34 deletions

View File

@ -0,0 +1,29 @@
#pragma once
#include "AssetCreationContext.h"
#include "AssetCreationResult.h"
#include "Game/IAsset.h"
#include "Pool/XAssetInfo.h"
#include "SearchPath/ISearchPath.h"
#include "Utils/MemoryManager.h"
#include "Zone/ZoneTypes.h"
#include <optional>
#include <string>
class AssetCreationContext;
class IAssetPostProcessor
{
public:
IAssetPostProcessor() = default;
virtual ~IAssetPostProcessor() = default;
IAssetPostProcessor(const IAssetPostProcessor& other) = default;
IAssetPostProcessor(IAssetPostProcessor&& other) noexcept = default;
IAssetPostProcessor& operator=(const IAssetPostProcessor& other) = default;
IAssetPostProcessor& operator=(IAssetPostProcessor&& other) noexcept = default;
[[nodiscard]] virtual asset_type_t GetHandlingAssetType() const = 0;
virtual void PostProcessAsset(XAssetInfoGeneric& assetInfo, AssetCreationContext& context) = 0;
virtual void FinalizeZone(AssetCreationContext& context){};
};