40 lines
906 B
C#
40 lines
906 B
C#
using System;
|
|
|
|
namespace Packager.AssetCooker
|
|
{
|
|
public class Task
|
|
{
|
|
public enum TaskState
|
|
{
|
|
Idle,
|
|
Cooking,
|
|
Done,
|
|
Failed
|
|
};
|
|
|
|
public string FileToProcess { get; private set; }
|
|
|
|
public TaskState State { get; set; }
|
|
|
|
public TimeSpan Duration { get; set; }
|
|
|
|
public FileType FileType { get; private set; }
|
|
|
|
// derived states
|
|
public bool Failed => State == TaskState.Failed;
|
|
|
|
public bool Finished => State == TaskState.Done || State == TaskState.Failed;
|
|
|
|
public Task(string fileToProcess)
|
|
{
|
|
FileToProcess = fileToProcess.TrimStart('\\', '/');
|
|
State = TaskState.Idle;
|
|
FileType = fileToProcess.GetFileType();
|
|
}
|
|
|
|
public override string ToString()
|
|
{
|
|
return FileToProcess;
|
|
}
|
|
}
|
|
}
|