using Cosmos.HAL.BlockDevice; namespace Cosmos.System.FileSystem { public abstract class FileSystemFactory { /// /// Get the name of the file system. /// public abstract string Name { get; } /// /// Checks if the file system can handle the partition. /// /// The partition. /// Returns true if the file system can handle the partition, false otherwise. public abstract bool IsType(Partition aDevice); /// /// Creates a new object for the given partition, root path, and size. /// /// The partition. /// The root path. /// The size, in MB. /// FileSystem value. public abstract FileSystem Create(Partition aDevice, string aRootPath, long aSize); } }