CMS 3D CMS Logo

List of all members | Public Member Functions | Public Attributes | Protected Member Functions | Private Attributes
CmsShowTaskExecutorBase Class Referenceabstract

#include <Fireworks/Core/interface/CmsShowTaskExecutorBase.h>

Inheritance diagram for CmsShowTaskExecutorBase:
CmsShowTaskExecutor

Public Member Functions

 CmsShowTaskExecutorBase ()
 
 CmsShowTaskExecutorBase (const CmsShowTaskExecutorBase &)=delete
 
void doNextTask ()
 
const CmsShowTaskExecutorBaseoperator= (const CmsShowTaskExecutorBase &)=delete
 
void requestNextTask ()
 
virtual void startDoingTasks ()=0
 
virtual ~CmsShowTaskExecutorBase ()
 

Public Attributes

sigc::signal< void()> tasksCompleted_
 

Protected Member Functions

virtual void doNextTaskImp ()=0
 
virtual bool moreTasksAvailable ()=0
 

Private Attributes

CmsShowTaskTimerm_taskTimer
 

Detailed Description

Description: <one line="" class="" summary>="">

Usage: <usage>

Definition at line 30 of file CmsShowTaskExecutorBase.h.

Constructor & Destructor Documentation

◆ CmsShowTaskExecutorBase() [1/2]

CmsShowTaskExecutorBase::CmsShowTaskExecutorBase ( )

Definition at line 32 of file CmsShowTaskExecutorBase.cc.

References m_taskTimer.

34 {
35  //m_timer->Connect("Timeout()","CmsShowTaskExecutorBase",this,"doNextTask()");
36  m_taskTimer = new CmsShowTaskTimer(this, 10);
37 }

◆ ~CmsShowTaskExecutorBase()

CmsShowTaskExecutorBase::~CmsShowTaskExecutorBase ( )
virtual

Definition at line 44 of file CmsShowTaskExecutorBase.cc.

44  {
45  //delete m_timer;
46 }

◆ CmsShowTaskExecutorBase() [2/2]

CmsShowTaskExecutorBase::CmsShowTaskExecutorBase ( const CmsShowTaskExecutorBase )
delete

Member Function Documentation

◆ doNextTask()

void CmsShowTaskExecutorBase::doNextTask ( )

Definition at line 73 of file CmsShowTaskExecutorBase.cc.

References doNextTaskImp(), m_taskTimer, moreTasksAvailable(), requestNextTask(), and tasksCompleted_.

Referenced by CmsShowTaskTimer::Notify().

73  {
74  m_taskTimer->TurnOff();
75  doNextTaskImp();
76  if (moreTasksAvailable()) {
78  } else {
79  tasksCompleted_.emit();
80  }
81 }
sigc::signal< void()> tasksCompleted_
virtual bool moreTasksAvailable()=0
virtual void doNextTaskImp()=0

◆ doNextTaskImp()

virtual void CmsShowTaskExecutorBase::doNextTaskImp ( )
protectedpure virtual

Implemented in CmsShowTaskExecutor.

Referenced by doNextTask().

◆ moreTasksAvailable()

virtual bool CmsShowTaskExecutorBase::moreTasksAvailable ( )
protectedpure virtual

Implemented in CmsShowTaskExecutor.

Referenced by doNextTask().

◆ operator=()

const CmsShowTaskExecutorBase& CmsShowTaskExecutorBase::operator= ( const CmsShowTaskExecutorBase )
delete

◆ requestNextTask()

void CmsShowTaskExecutorBase::requestNextTask ( )

Definition at line 63 of file CmsShowTaskExecutorBase.cc.

References m_taskTimer.

Referenced by doNextTask(), and CmsShowTaskExecutor::startDoingTasks().

63  {
64  //NOTE: If I use my own timer then the first time I call Start it works but the second
65  // time causes a segmentation fault
66 
67  //Emit("requestNextTask()");
68  //m_timer->Start(1,kTRUE);
69  //std::cout <<"requestNextTask"<<std::endl;
70  m_taskTimer->TurnOn();
71 }

◆ startDoingTasks()

virtual void CmsShowTaskExecutorBase::startDoingTasks ( )
pure virtual

Implemented in CmsShowTaskExecutor.

Member Data Documentation

◆ m_taskTimer

CmsShowTaskTimer* CmsShowTaskExecutorBase::m_taskTimer
private

Definition at line 58 of file CmsShowTaskExecutorBase.h.

Referenced by CmsShowTaskExecutorBase(), doNextTask(), and requestNextTask().

◆ tasksCompleted_

sigc::signal<void()> CmsShowTaskExecutorBase::tasksCompleted_

Definition at line 45 of file CmsShowTaskExecutorBase.h.

Referenced by doNextTask().