Index: cc/raster/task.h |
diff --git a/cc/raster/task.h b/cc/raster/task.h |
index 54bcf8b6b1a508b9d31e50fa39e0a327f144513c..6d2b6b85434254dd517aff9eab5a4eb5a53e0b5e 100644 |
--- a/cc/raster/task.h |
+++ b/cc/raster/task.h |
@@ -16,16 +16,19 @@ namespace cc { |
class Task; |
// States to manage life cycle of a task. Task gets created with NEW state and |
-// concludes either in FINISHED or CANCELLED state. So possible life cycle |
-// paths for task are - |
-// NEW -> SCHEDULED -> RUNNING -> FINISHED |
-// NEW -> SCHEDULED -> CANCELED |
+// if scheduled concludes in COMPLETED state. So possible life cycle paths for |
vmpstr
2016/05/18 19:08:33
you say here "if scheduled concludes in completed"
prashant.n
2016/05/19 00:59:52
This above path is for task which is not scheduled
|
+// task are - |
+// NEW |
vmpstr
2016/05/18 19:08:33
I don't think you need this one?
prashant.n
2016/05/19 00:59:52
We will omit this.
|
+// NEW -> CANCELED -> COMPLETED |
+// NEW -> SCHEDULED -> CANCELED-> COMPLETED |
+// NEW -> SCHEDULED -> RUNNING -> FINISHED -> COMPLETED |
class CC_EXPORT TaskState { |
public: |
bool IsScheduled() const; |
bool IsRunning() const; |
bool IsFinished() const; |
bool IsCanceled() const; |
+ bool IsCompleted() const; |
// Functions to change the state of task. These functions should be called |
// only from TaskGraphWorkQueue where the life cycle of a task is decided or |
@@ -37,6 +40,10 @@ class CC_EXPORT TaskState { |
void DidFinish(); |
void DidCancel(); |
+ // Task owner should call this function to indicate that this task is |
+ // completed and no more it should be processed. |
vmpstr
2016/05/18 19:08:33
s/no more it should be processed/it doesn't need t
prashant.n
2016/05/19 00:59:52
Ok, I'll modify this.
|
+ void DidComplete(); |
+ |
private: |
friend class Task; |
@@ -44,7 +51,14 @@ class CC_EXPORT TaskState { |
TaskState(); |
~TaskState(); |
- enum class Value : uint16_t { NEW, SCHEDULED, RUNNING, FINISHED, CANCELED }; |
+ enum class Value : uint16_t { |
+ NEW, |
+ SCHEDULED, |
+ RUNNING, |
+ FINISHED, |
+ CANCELED, |
+ COMPLETED |
vmpstr
2016/05/18 19:08:33
In my mind the difference between "FINISHED" and "
prashant.n
2016/05/19 00:59:52
Yes. Finished and Completed are 2 sides of same co
|
+ }; |
Value value_; |
}; |