First
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
#pragma once
|
||||
|
||||
//#pragma warning( disable : 4250)
|
||||
|
||||
#include "fs/IFilesystem.h"
|
||||
#include "fs/AbsPath.h"
|
||||
#include "fs/Error.h"
|
||||
#include "fs/Mode.h"
|
||||
|
||||
#include "fs/Api.h"
|
||||
|
||||
namespace fs
|
||||
{
|
||||
class ISource;
|
||||
class IMapSource;
|
||||
|
||||
class FS_API IPack
|
||||
{
|
||||
public:
|
||||
virtual ~IPack() = default;
|
||||
|
||||
using SourceFlag = IFilesystem::SourceFlag;
|
||||
using SourceFlags = IFilesystem::SourceFlags;
|
||||
using MapView = IFilesystem::MapView;
|
||||
|
||||
virtual OpenSourceResult openSource(const AbsPath& i_path, SourceFlags i_flags = SourceFlags()) const = 0;
|
||||
virtual OpenStreamSourceResult openStreamSource(const AbsPath& i_path, SourceFlags i_flags = SourceFlags()) const = 0;
|
||||
virtual OpenMapSourceResult openMapSource(const AbsPath& i_path, MapView i_mapView = MapView(), SourceFlags i_flags = SourceFlags()) const = 0;
|
||||
|
||||
virtual IsFileResult isFile(const AbsPath& i_path) const = 0;
|
||||
virtual IsFolderResult isFolder(const AbsPath& i_path) const = 0;
|
||||
virtual ExistsResult exists(const AbsPath& i_path) const = 0;
|
||||
|
||||
virtual GetStatResult getStat(const AbsPath& i_path) const = 0;
|
||||
|
||||
virtual cppcoro::generator<EnumerateEntry> enumerate(const AbsPath& i_path) const = 0;
|
||||
virtual cppcoro::generator<EnumerateEntry> enumerateRecursively(const AbsPath& i_path) const = 0;
|
||||
|
||||
virtual ConvertToNativePathResult convertToNativePath(const AbsPath& i_path) const = 0;
|
||||
|
||||
protected:
|
||||
IPack() = default;
|
||||
};
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user