#ifndef CONTROLLABLETASK_H #define CONTROLLABLETASK_H /** From answer by Hatter * * https://stackoverflow.com/questions/5423058/qfuture-that-can-be-cancelled-and-report-progress */ //#include "TaskControl.h" class TaskControl; template class ControllableTask { public: using Result = T; virtual ~ControllableTask() {} virtual Result run(TaskControl& control) = 0; }; #endif // CONTROLLABLETASK_H