]> git.tdb.fi Git - builder.git/blobdiff - source/task.h
Document Task and ExternalTask methods
[builder.git] / source / task.h
index 9cf2bac9081b7b2c8df1627342aa1dd14600d8ff..e7e37e3f04423d525afdf44e00a2e9c854c5c4b1 100644 (file)
@@ -6,7 +6,8 @@
 
 /**
 Tasks are used to manage other programs and worker threads involved in the
-build process.  They are run asynchronously.
+build process.  They are run asynchronously by default, but a wait() method is
+provided should it be necessary to wait for a task to finish.
 */
 class Task
 {
@@ -25,9 +26,17 @@ protected:
 public:
        virtual ~Task() { }
 
+       /** Returns the command being executed for this task.  Only makes sense if
+       an external command is involved. */
        virtual std::string get_command() const = 0;
+
+       /// Starts the task.
        virtual void start() = 0;
+
+       /// Checks the status of the task and immediately returns.
        virtual Status check() = 0;
+
+       /// Waits for the task to finish and returns its final status.
        virtual Status wait() = 0;
 };