//------------------------------------------------------------
// Game Framework
// Copyright © 2013-2021 loyalsoft. All rights reserved.
// Homepage: http://www.game7000.com/
// Feedback: http://www.game7000.com/
//------------------------------------------------------------
using System.Collections.Generic;
namespace GameFramework.FileSystem
{
///
/// 文件系统管理器。
///
public interface IFileSystemManager
{
///
/// 获取文件系统数量。
///
int Count
{
get;
}
///
/// 设置文件系统辅助器。
///
/// 文件系统辅助器。
void SetFileSystemHelper(IFileSystemHelper fileSystemHelper);
///
/// 检查是否存在文件系统。
///
/// 要检查的文件系统的完整路径。
/// 是否存在文件系统。
bool HasFileSystem(string fullPath);
///
/// 获取文件系统。
///
/// 要获取的文件系统的完整路径。
/// 获取的文件系统。
IFileSystem GetFileSystem(string fullPath);
///
/// 创建文件系统。
///
/// 要创建的文件系统的完整路径。
/// 要创建的文件系统的访问方式。
/// 要创建的文件系统的最大文件数量。
/// 要创建的文件系统的最大块数据数量。
/// 创建的文件系统。
IFileSystem CreateFileSystem(string fullPath, FileSystemAccess access, int maxFileCount, int maxBlockCount);
///
/// 加载文件系统。
///
/// 要加载的文件系统的完整路径。
/// 要加载的文件系统的访问方式。
/// 加载的文件系统。
IFileSystem LoadFileSystem(string fullPath, FileSystemAccess access);
///
/// 销毁文件系统。
///
/// 要销毁的文件系统。
/// 是否删除文件系统对应的物理文件。
void DestroyFileSystem(IFileSystem fileSystem, bool deletePhysicalFile);
///
/// 获取所有文件系统集合。
///
/// 获取的所有文件系统集合。
IFileSystem[] GetAllFileSystems();
///
/// 获取所有文件系统集合。
///
/// 获取的所有文件系统集合。
void GetAllFileSystems(List results);
}
}