#ifndef TASK_PARSE_WRAPPER_H #define TASK_PARSE_WRAPPER_H #include #include "data/parser/Parser.h" #include "data/parser/ParserClientImpl.h" #include "utility/scheduling/Task.h" #include "utility/scheduling/TaskRunner.h" #include "utility/scheduling/TaskDecorator.h" #include "utility/TimePoint.h" class DialogView; class FileRegister; class TaskParseWrapper : public TaskDecorator { public: TaskParseWrapper( std::shared_ptr fileRegister, DialogView* dialogView ); virtual ~TaskParseWrapper(); virtual void setTask(std::shared_ptr task); private: virtual void doEnter(std::shared_ptr blackboard); virtual TaskState doUpdate(std::shared_ptr blackboard); virtual void doExit(std::shared_ptr blackboard); virtual void doReset(std::shared_ptr blackboard); std::shared_ptr m_fileRegister; DialogView* m_dialogView; TimePoint m_start; std::shared_ptr m_taskRunner; }; #endif // TASK_PARSE_WRAPPER_H