CMS 3D CMS Logo

CmsShowTaskExecutor.h
Go to the documentation of this file.
1 #ifndef Fireworks_Core_CmsShowTaskExecutor_h
2 #define Fireworks_Core_CmsShowTaskExecutor_h
3 // -*- C++ -*-
4 //
5 // Package: Core
6 // Class : CmsShowTaskExecutor
7 //
16 //
17 // Original Author: Chris Jones
18 // Created: Fri Jul 11 12:09:45 EDT 2008
19 //
20 
21 // system include files
22 #include <boost/function.hpp>
23 #include <deque>
24 
25 // user include files
27 
28 // forward declarations
29 
31 
32 public:
34  ~CmsShowTaskExecutor() override;
35 
36  typedef boost::function0<void> TaskFunctor;
37  // ---------- const member functions ---------------------
38 
39  // ---------- static member functions --------------------
40 
41  // ---------- member functions ---------------------------
42  void addTask(const TaskFunctor& iTask);
43 
44  void startDoingTasks() override;
45 protected:
46  void doNextTaskImp() override;
47  bool moreTasksAvailable() override;
48 
49 private:
50  CmsShowTaskExecutor(const CmsShowTaskExecutor&) = delete; // stop default
51 
52  const CmsShowTaskExecutor& operator=(const CmsShowTaskExecutor&) = delete; // stop default
53 
54  // ---------- member data --------------------------------
55  std::deque<TaskFunctor> m_tasks;
56 };
57 
58 
59 #endif
void startDoingTasks() override
void doNextTaskImp() override
std::deque< TaskFunctor > m_tasks
const CmsShowTaskExecutor & operator=(const CmsShowTaskExecutor &)=delete
bool moreTasksAvailable() override
boost::function0< void > TaskFunctor
void addTask(const TaskFunctor &iTask)