annotate include/TaskManager/TaskManagerImpl.h @ 134:92fcce4330f3

CreateSpan で、三角形を二つに割る時、 元々x軸に水平な辺を持っていると、辺に対して half_triangle をかけてしまい 暴走するので、その応急処置。詳しくは CreateSpan::half_triangle
author gongo@gendarme.cr.ie.u-ryukyu.ac.jp
date Thu, 27 Nov 2008 16:10:55 +0900
parents 5c194c71eca8
children 7075842aa155
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
1 #ifndef INCLUDED_TASK_MANAGER_IMPL
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
2 #define INCLUDED_TASK_MANAGER_IMPL
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
3
42
aa11038dbdc1 *** empty log message ***
gongo
parents: 18
diff changeset
4 #ifndef INCLUDED_MAIL_MANAGER
aa11038dbdc1 *** empty log message ***
gongo
parents: 18
diff changeset
5 # include "MailManager.h"
aa11038dbdc1 *** empty log message ***
gongo
parents: 18
diff changeset
6 #endif
aa11038dbdc1 *** empty log message ***
gongo
parents: 18
diff changeset
7
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
8 #ifndef INCLUDED_BUFFER_MANAGER
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
9 # include "BufferManager.h"
42
aa11038dbdc1 *** empty log message ***
gongo
parents: 18
diff changeset
10 #endif
aa11038dbdc1 *** empty log message ***
gongo
parents: 18
diff changeset
11
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
12 #ifndef INCLUDED_LIST_DATA
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
13 # include "ListData.h"
54
90523ccc4dff *** empty log message ***
gongo
parents: 50
diff changeset
14 #endif
90523ccc4dff *** empty log message ***
gongo
parents: 50
diff changeset
15
3
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
16 class TaskManagerImpl {
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
17 public:
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
18 /* constructor */
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
19 TaskManagerImpl(int num = 1);
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
20 virtual ~TaskManagerImpl(void) {}
3
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
21
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
22 /* variables */
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
23 int machineNum;
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
24 TaskQueuePtr activeTaskQueue;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
25 TaskQueuePtr waitTaskQueue;
58
7492eb28b577 *** empty log message ***
gongo
parents: 54
diff changeset
26 BufferManager *bufferManager;
3
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
27
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
28 /* functions */
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
29 // system
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
30 virtual void init(void) = 0;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
31 virtual void run(void) = 0;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
32 virtual void append_activeTask(HTaskPtr);
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
33 virtual void append_waitTask(HTaskPtr);
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
34
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
35 void check_task_finish(HTaskPtr task);
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
36 void notify_wait_taskQueue(HTaskPtr depend, TaskQueuePtr list);
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
37 TaskQueuePtr remove_taskQueue(TaskQueuePtr list, TaskQueuePtr task);
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
38 TaskQueuePtr remove_taskQueue_eq_task(TaskQueuePtr list, HTaskPtr task);
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
39 void remove_taskQueue_all(TaskQueuePtr list);
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
40 void wakeup_waitTask(void);
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
41
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
42 void systask_init(void);
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
43
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
44 // user
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
45 HTaskPtr create_task(int cmd);
3
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
46 void set_task_depend(HTaskPtr master, HTaskPtr slave);
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
47 void spawn_task(HTaskPtr);
65
519d24aa7ac8 *** empty log message ***
gongo
parents: 58
diff changeset
48 void set_task_cpu(HTaskPtr, CPU_TYPE);
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
49 virtual void* allocate(int size) = 0;
3
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
50 };
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
51 #endif