OpenAssetTools/src/ZoneLoading/Loading/IZoneLoaderFactory.h
2023-11-19 21:07:21 +00:00

18 lines
579 B
C++

#pragma once
#include "Zone/ZoneTypes.h"
#include "ZoneLoader.h"
class IZoneLoaderFactory
{
public:
IZoneLoaderFactory() = default;
virtual ~IZoneLoaderFactory() = default;
IZoneLoaderFactory(const IZoneLoaderFactory& other) = default;
IZoneLoaderFactory(IZoneLoaderFactory&& other) noexcept = default;
IZoneLoaderFactory& operator=(const IZoneLoaderFactory& other) = default;
IZoneLoaderFactory& operator=(IZoneLoaderFactory&& other) noexcept = default;
virtual ZoneLoader* CreateLoaderForHeader(ZoneHeader& header, std::string& fileName) = 0;
};