X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fardour%2Fprogress.h;h=79043a31eef3549c963deffe9735f0204cc6ebca;hb=c4a7d25b34aec71ab7d594af50f7b522518e0221;hp=e252c63bd86efddf6be178ed95d3e30aee6e0b9d;hpb=935aeb55dd5fbce9fb9b1dd7770834b3b684a6d1;p=ardour.git diff --git a/libs/ardour/ardour/progress.h b/libs/ardour/ardour/progress.h index e252c63bd8..79043a31ee 100644 --- a/libs/ardour/ardour/progress.h +++ b/libs/ardour/ardour/progress.h @@ -22,10 +22,12 @@ #include +#include "ardour/libardour_visibility.h" + namespace ARDOUR { -/** A class to handle reporting of progress of something */ -class Progress +/** A class to handle reporting of progress of something */ +class LIBARDOUR_API Progress { public: Progress (); @@ -35,6 +37,11 @@ public: void ascend (); void descend (float); + bool cancelled () const; + +protected: + void cancel (); + private: /** Report overall progress. * @param p Current progress (from 0 to 1) @@ -43,12 +50,13 @@ private: struct Level { Level (float a) : allocation (a), normalised (0) {} - + float allocation; float normalised; }; std::list _stack; + bool _cancelled; }; }