43 lines
865 B
C++
43 lines
865 B
C++
#ifndef FOUG_CPP_ABSTRACT_TASK_PROGRESS_H
|
|
#define FOUG_CPP_ABSTRACT_TASK_PROGRESS_H
|
|
|
|
namespace foug {
|
|
|
|
namespace internal { class AbstractTaskProgressPrivate; }
|
|
|
|
class AbstractTaskProgress
|
|
{
|
|
public:
|
|
AbstractTaskProgress();
|
|
virtual ~AbstractTaskProgress();
|
|
|
|
double rangeMin() const;
|
|
double rangeMax() const;
|
|
void setRange(double min, double max);
|
|
|
|
int stepId() const;
|
|
void setStepId(int id);
|
|
|
|
double progress() const;
|
|
double value() const;
|
|
void setValue(double v);
|
|
|
|
double progressUpdateThreshold() const;
|
|
void setProgressUpdateThreshold(double v);
|
|
|
|
virtual void reset();
|
|
|
|
void asyncTaskStop();
|
|
bool isTaskStopRequested() const;
|
|
virtual void taskStoppedEvent();
|
|
|
|
virtual void progressUpdateEvent() = 0;
|
|
|
|
private:
|
|
internal::AbstractTaskProgressPrivate* const d;
|
|
};
|
|
|
|
} // namespace foug
|
|
|
|
#endif // FOUG_CPP_ABSTRACT_TASK_PROGRESS_H
|