--- smsdaemon/TaskManager.h 2008/06/16 11:30:20 92 +++ smsdaemon/TaskManager.h 2008/12/21 17:42:30 207 @@ -3,11 +3,11 @@ #include #include -#include +#include -#include "Task.h" +class Task; -class IGsmModem; +class ISmsTransceiver; class TaskManager { @@ -15,16 +15,23 @@ TaskManager(); ~TaskManager(); - void ExecuteTasks(IGsmModem& modem); + void ExecuteTasks(ISmsTransceiver& modem); void LoadTasks(); + void DestroyTasks(); - Task* GetTask(const std::string& taskname); + void AddPersistantTask(Task* task); + void AddTemporaryTask(Task* task); + + Task* GetPersistantTask(const std::string& taskname); - std::vector GetTaskList(); private: - std::map _tasks; + Task* CreateTask(const std::string& taskName, const std::map& arguments); + + std::map _persistant_tasks; + + std::list _temp_tasks; int _lastExecuted; };