CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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 // $Id: CmsShowTaskExecutor.h,v 1.3 2009/01/23 21:35:42 amraktad Exp $
20 //
21 
22 // system include files
23 #include <boost/function.hpp>
24 #include <deque>
25 
26 // user include files
28 
29 // forward declarations
30 
32 
33 public:
35  virtual ~CmsShowTaskExecutor();
36 
37  typedef boost::function0<void> TaskFunctor;
38  // ---------- const member functions ---------------------
39 
40  // ---------- static member functions --------------------
41 
42  // ---------- member functions ---------------------------
43  void addTask(const TaskFunctor& iTask);
44 
45  void startDoingTasks();
46 protected:
47  virtual void doNextTaskImp();
48  virtual bool moreTasksAvailable();
49 
50 private:
51  CmsShowTaskExecutor(const CmsShowTaskExecutor&); // stop default
52 
53  const CmsShowTaskExecutor& operator=(const CmsShowTaskExecutor&); // stop default
54 
55  // ---------- member data --------------------------------
56  std::deque<TaskFunctor> m_tasks;
57 };
58 
59 
60 #endif
virtual bool moreTasksAvailable()
virtual void doNextTaskImp()
std::deque< TaskFunctor > m_tasks
boost::function0< void > TaskFunctor
void addTask(const TaskFunctor &iTask)
const CmsShowTaskExecutor & operator=(const CmsShowTaskExecutor &)