2
0
mirror of https://github.com/Laupetin/OpenAssetTools.git synced 2025-09-08 09:47:26 +00:00

chore: refactor IW4 asset loaders

This commit is contained in:
Jan
2024-12-25 21:39:05 +01:00
parent f9456101e6
commit 7ef944ebd4
139 changed files with 2370 additions and 2965 deletions

View File

@@ -1,35 +1,29 @@
#include "AbstractMenuConverter.h"
#include <format>
#include <iostream>
using namespace menu;
AbstractMenuConverter::AbstractMenuConverter(const bool disableOptimizations, ISearchPath* searchPath, MemoryManager* memory, IAssetLoadingManager* manager)
AbstractMenuConverter::AbstractMenuConverter(const bool disableOptimizations, ISearchPath& searchPath, MemoryManager& memory, AssetCreationContext& context)
: m_disable_optimizations(disableOptimizations),
m_search_path(searchPath),
m_memory(memory),
m_manager(manager)
m_context(context)
{
}
void AbstractMenuConverter::PrintConversionExceptionDetails(const MenuConversionException& e)
{
std::cout << "ERROR while converting menu:\n";
std::cout << " Menu: " << e.m_menu->m_name << "\n";
std::cerr << "ERROR while converting menu:\n";
std::cerr << std::format(" Menu: {}\n", e.m_menu->m_name);
if (e.m_item)
{
std::cout << "Item: ";
if (!e.m_item->m_name.empty())
{
std::cout << e.m_item->m_name << "\n";
}
std::cout << "\n";
std::cerr << std::format("Item: {}\n", e.m_item->m_name);
}
std::cout << " Message: " << e.m_message << "\n";
std::cerr << std::format(" Message: {}\n", e.m_message);
}
const char* AbstractMenuConverter::ConvertString(const std::string& str) const
@@ -37,5 +31,5 @@ const char* AbstractMenuConverter::ConvertString(const std::string& str) const
if (str.empty())
return nullptr;
return m_memory->Dup(str.c_str());
return m_memory.Dup(str.c_str());
}

View File

@@ -1,6 +1,6 @@
#pragma once
#include "AssetLoading/IAssetLoadingManager.h"
#include "Asset/AssetCreationContext.h"
#include "MenuConversionException.h"
#include "SearchPath/ISearchPath.h"
#include "Utils/ClassUtils.h"
@@ -11,16 +11,14 @@ namespace menu
class AbstractMenuConverter
{
protected:
bool m_disable_optimizations;
ISearchPath* m_search_path;
MemoryManager* m_memory;
IAssetLoadingManager* m_manager;
AbstractMenuConverter(bool disableOptimizations, ISearchPath* searchPath, MemoryManager* memory, IAssetLoadingManager* manager);
AbstractMenuConverter(bool disableOptimizations, ISearchPath& searchPath, MemoryManager& memory, AssetCreationContext& context);
_NODISCARD const char* ConvertString(const std::string& str) const;
public:
static void PrintConversionExceptionDetails(const MenuConversionException& e);
bool m_disable_optimizations;
ISearchPath& m_search_path;
MemoryManager& m_memory;
AssetCreationContext& m_context;
};
} // namespace menu