mirror of
https://github.com/Laupetin/OpenAssetTools.git
synced 2025-04-21 00:25:44 +00:00
27 lines
1.1 KiB
C++
27 lines
1.1 KiB
C++
#pragma once
|
|
|
|
#include "AssetLoading/IAssetLoadingManager.h"
|
|
|
|
#include <map>
|
|
#include <memory>
|
|
|
|
class MockAssetLoadingManager final : public IAssetLoadingManager
|
|
{
|
|
Zone& m_zone;
|
|
std::unique_ptr<Gdt> m_mock_gdt;
|
|
std::unique_ptr<AssetLoadingContext> m_context;
|
|
std::map<std::string, std::unique_ptr<XAssetInfoGeneric>> m_added_assets;
|
|
std::multimap<std::string, std::unique_ptr<XAssetInfoGeneric>> m_available_dependencies;
|
|
|
|
public:
|
|
MockAssetLoadingManager(Zone& zone, ISearchPath& searchPath);
|
|
|
|
_NODISCARD AssetLoadingContext* GetAssetLoadingContext() const override;
|
|
XAssetInfoGeneric* AddAsset(std::unique_ptr<XAssetInfoGeneric> xAssetInfo) override;
|
|
XAssetInfoGeneric* LoadDependency(asset_type_t assetType, const std::string& assetName) override;
|
|
IndirectAssetReference LoadIndirectAssetReference(asset_type_t assetType, const std::string& assetName) override;
|
|
|
|
void MockAddAvailableDependency(asset_type_t assetType, std::string assetName, void* asset);
|
|
XAssetInfoGeneric* MockGetAddedAsset(const std::string& assetName);
|
|
};
|