Go to the documentation of this file.Go to the SVN repository for this file.
1 #ifndef GUI_OBJUTILS___SCHEDULER_ENGINE__HPP
2 #define GUI_OBJUTILS___SCHEDULER_ENGINE__HPP
73 virtual bool IsActive();
77 void StartJob(
IAppJob& job, IEngineParams* );
79 virtual void CancelJob(
IAppJob& job);
80 virtual void SuspendJob(
IAppJob& );
81 virtual void ResumeJob(
IAppJob& );
85 virtual void ShutDown();
86 virtual void RequestCancel();
96 m_NextExec(
CTime::eCurrent) {}
105 void x_WorkOnThread();
108 unsigned long x_GetWaitPeriod();
CAtomicCounter_WithAutoInit –.
CSchedulerEngine CSchedulerEngine is an engine that can be used with CAppJobDispatcher.
list< CJobRecord > m_Jobs
IAppJob::EJobState TJobState
CAtomicCounter_WithAutoInit m_StopRequested
IAppJobEngineListener * m_Listener
CRef< CThread > m_WorkerThread
IAppJobEngineListener - receives notifications about changes in job state.
virtual CTimeSpan GetWaitPeriod()=0
returns a period of time after which the task shall be executed again
EJobState
Job states (describe FSM)
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
#define NCBI_GUIUTILS_EXPORT
Multi-threading – classes, functions, and features.
record that holds infromation about a job