3 |
|
|
4 |
#include <string> |
#include <string> |
5 |
#include <map> |
#include <map> |
6 |
#include <vector> |
#include <list> |
7 |
|
|
8 |
#include "Task.h" |
class Task; |
9 |
|
|
10 |
|
class ISmsTransceiver; |
11 |
|
|
12 |
class TaskManager |
class TaskManager |
13 |
{ |
{ |
15 |
TaskManager(); |
TaskManager(); |
16 |
~TaskManager(); |
~TaskManager(); |
17 |
|
|
18 |
void ExecuteTasks(); |
void ExecuteTasks(ISmsTransceiver& modem); |
19 |
|
|
20 |
void LoadTasks(); |
void LoadTasks(); |
21 |
|
void DestroyTasks(); |
22 |
|
|
23 |
|
void AddPersistantTask(Task* task); |
24 |
|
void AddTemporaryTask(Task* task); |
25 |
|
|
26 |
Task* GetTask(const std::string& taskname); |
Task* GetPersistantTask(const std::string& taskname); |
27 |
|
|
|
std::vector<Task*> GetTaskList(); |
|
28 |
|
|
29 |
private: |
private: |
30 |
std::map<std::string, Task*> _tasks; |
Task* CreateTask(const std::string& taskName, const std::map<std::string, std::string>& arguments); |
31 |
|
|
32 |
|
std::map<std::string, Task*> _persistant_tasks; |
33 |
|
|
34 |
|
std::list<Task*> _temp_tasks; |
35 |
|
|
36 |
|
int _lastExecuted; |
37 |
}; |
}; |
38 |
|
|
39 |
#endif //__MANAGER_H__ |
#endif //__MANAGER_H__ |