4 #include <sigc++/trackable.h>
5 #include <sigc++/signal.h>
13 typedef std::map<std::string, Element> MapType;
17 namespace WFMath {
class TimeDiff; }
25 class Task :
public sigc::trackable
34 const std::string&
name()
const;
48 sigc::signal<void> Completed;
50 sigc::signal<void> Cancelled;
52 sigc::signal<void> Progressed;
54 sigc::signal<void> ProgressRateChanged;
57 void progressChanged();
67 void updateFromAtlas(
const Atlas::Message::MapType& d);
72 void updatePredictedProgress(
const WFMath::TimeDiff& dt);
74 const std::string m_name;
79 double m_progressRate;