My Project
D:/source/c++/Programme/sally/sally/sallyAPI/SchedulerManager.h
Go to the documentation of this file.
00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 
00022 
00023 
00024 
00025 
00026 
00027 
00028 #pragma once
00029 #include "define.h"
00030 #include "Scheduler.h"
00031 #include "AutoLock.h"
00032 
00033 namespace SallyAPI
00034 {
00035         namespace Scheduler
00036         {
00045 
00046                 class DLL_API_SALLY CSchedulerManager
00047                 {
00048                 private:
00049                         static SallyAPI::Scheduler::CSchedulerManager*  m_pObject;
00050                         SallyAPI::System::CCritSection                                  m_critSect;
00051                         std::vector<SallyAPI::Scheduler::CScheduler>    m_vScheduler;
00052 
00053                         void SchedulerCanceled(SallyAPI::Scheduler::CScheduler& scheduler);
00054                         void SchedulerFinished(SallyAPI::Scheduler::CScheduler& scheduler);
00055                         void ExecuteScheduler(SallyAPI::Scheduler::CScheduler& scheduler);
00056                         void ResetScheduler(SallyAPI::Scheduler::CScheduler& scheduler);
00057                         std::string GetLastSchedulerRunAsString(SallyAPI::Scheduler::CScheduler& scheduler);
00058                         SYSTEMTIME GetLastSchedulerRun(SallyAPI::Scheduler::CScheduler& scheduler);
00059 
00060                         CSchedulerManager();
00061                         ~CSchedulerManager();
00062                 public:
00063                         static SallyAPI::Scheduler::CSchedulerManager*  GetInstance();
00064                         static void     DeleteInstance();
00065 
00066                         void AddScheduler(const SallyAPI::Scheduler::CScheduler& scheduler);
00067                         void CheckScheduler();
00068 
00069                         void RemoveScheduler(const std::string& explicidAppName, const std::string& identifier);
00070                         void RemoveScheduler(SallyAPI::GUI::CAppBase* appBase, const std::string& identifier);
00071 
00072                         void ExecuteScheduler(const std::string& explicidAppName, const std::string& identifier);
00073                         void ExecuteScheduler(SallyAPI::GUI::CAppBase* appBase, const std::string& identifier);
00074 
00075                         void SchedulerFinished(const std::string& explicidAppName, const std::string& identifier);
00076                         void SchedulerFinished(SallyAPI::GUI::CAppBase* appBase, const std::string& identifier);
00077 
00078                         void SchedulerCanceled(const std::string& explicidAppName, const std::string& identifier);
00079                         void SchedulerCanceled(SallyAPI::GUI::CAppBase* appBase, const std::string& identifier);
00080 
00081                         void ResetScheduler(const std::string& explicidAppName, const std::string& identifier);
00082                         void ResetScheduler(SallyAPI::GUI::CAppBase* appBase, const std::string& identifier);
00083 
00084                         void SetSchedulerStatus(const std::string& explicidAppName, const std::string& identifier, SallyAPI::Scheduler::SCHEDULER_STATUS status);
00085                         void SetSchedulerStatus(SallyAPI::GUI::CAppBase* appBase, const std::string& identifier, SallyAPI::Scheduler::SCHEDULER_STATUS status);
00086 
00087                         SallyAPI::Scheduler::SCHEDULER_STATUS GetSchedulerStatus(const std::string& explicidAppName, const std::string& identifier);
00088                         SallyAPI::Scheduler::SCHEDULER_STATUS GetSchedulerStatus(SallyAPI::GUI::CAppBase* appBase, const std::string& identifier);
00089 
00090                         std::string GetLastSchedulerRunAsString(const std::string& explicidAppName, const std::string& identifier);
00091                         std::string GetLastSchedulerRunAsString(SallyAPI::GUI::CAppBase* appBase, const std::string& identifier);
00092 
00093                         SYSTEMTIME GetLastSchedulerRun(const std::string& explicidAppName, const std::string& identifier);
00094                         SYSTEMTIME GetLastSchedulerRun(SallyAPI::GUI::CAppBase* appBase, const std::string& identifier);
00095                 };
00096         }
00097 }
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines