-
Notifications
You must be signed in to change notification settings - Fork 550
/
FileSystemFactory.cs
28 lines (25 loc) · 1.03 KB
/
FileSystemFactory.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
using Cosmos.HAL.BlockDevice;
namespace Cosmos.System.FileSystem
{
public abstract class FileSystemFactory
{
/// <summary>
/// Get the name of the file system.
/// </summary>
public abstract string Name { get; }
/// <summary>
/// Checks if the file system can handle the partition.
/// </summary>
/// <param name="aDevice">The partition.</param>
/// <returns>Returns true if the file system can handle the partition, false otherwise.</returns>
public abstract bool IsType(Partition aDevice);
/// <summary>
/// Creates a new <see cref="FileSystem"/> object for the given partition, root path, and size.
/// </summary>
/// <param name="aDevice">The partition.</param>
/// <param name="aRootPath">The root path.</param>
/// <param name="aSize">The size, in MB.</param>
/// <returns>FileSystem value.</returns>
public abstract FileSystem Create(Partition aDevice, string aRootPath, long aSize);
}
}