]> git.tdb.fi Git - builder.git/blobdiff - source/internaltask.cpp
Inline simple constructors
[builder.git] / source / internaltask.cpp
index c117bad897365f9e4159f7c58b9f9b764f6ae13c..5810be12670b7cecae652ae375666926fcd45e31 100644 (file)
@@ -1,9 +1,5 @@
 #include "internaltask.h"
 
-InternalTask::InternalTask(Worker *w):
-       worker(w)
-{ }
-
 InternalTask::~InternalTask()
 {
        worker->join();
@@ -12,24 +8,21 @@ InternalTask::~InternalTask()
 
 void InternalTask::start()
 {
+       prepare();
        worker->launch();
 }
 
 Task::Status InternalTask::check()
 {
-       if(worker->get_status()!=RUNNING)
-               signal_finished.emit(worker->get_status()==SUCCESS);
-       return worker->get_status();
+       Status result = worker->get_status();
+       if(result!=RUNNING)
+               signal_finished.emit(result==SUCCESS);
+       return result;
 }
 
 Task::Status InternalTask::wait()
 {
        Status result;
-       while((result = worker->get_status())==RUNNING) ;
+       while((result = check())==RUNNING) ;
        return result;
 }
-
-
-InternalTask::Worker::Worker():
-       status(RUNNING)
-{ }