OpenAssetTools/src/ZoneLoading/Loading/IZoneLoaderFactory.h
2021-03-14 12:34:50 +01:00

17 lines
578 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;
};