Mercurial > hg > Members > kono > Cerium
annotate TaskManager/kernel/ppe/MailManager.h @ 639:70c5c2d2eb24
fix
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Thu, 19 Nov 2009 18:45:24 +0900 |
parents | 90c61fe2b109 |
children | a909c50081c2 |
rev | line source |
---|---|
3 | 1 #ifndef INCLUDED_MAIL_MANAGER |
2 #define INCLUDED_MAIL_MANAGER | |
3 | |
605
90c61fe2b109
working on 32 bit compiler
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
603
diff
changeset
|
4 #include "types.h" |
90c61fe2b109
working on 32 bit compiler
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
603
diff
changeset
|
5 |
3 | 6 typedef struct mail_queue { |
603
42c94f85c779
long -> memaddr (64 or 32)
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
602
diff
changeset
|
7 memaddr data; |
3 | 8 struct mail_queue *next; |
9 } MailQueue, *MailQueuePtr; | |
10 | |
11 class MailManager { | |
12 public: | |
19 | 13 /* constructor */ |
603
42c94f85c779
long -> memaddr (64 or 32)
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
602
diff
changeset
|
14 MailManager(); |
42c94f85c779
long -> memaddr (64 or 32)
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
602
diff
changeset
|
15 ~MailManager(); |
19 | 16 |
3 | 17 /* functions */ |
50 | 18 int init(int num); |
603
42c94f85c779
long -> memaddr (64 or 32)
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
602
diff
changeset
|
19 MailQueuePtr create(memaddr data); |
50 | 20 void free(MailQueuePtr q); |
21 static MailQueuePtr append_mailQueue(MailQueuePtr list, MailQueuePtr q); | |
3 | 22 |
23 private: | |
24 /* variables */ | |
25 MailQueuePtr mailQueuePool; | |
26 MailQueuePtr freeMailQueue; | |
50 | 27 |
28 /* functions */ | |
29 int extend_pool(int num); | |
603
42c94f85c779
long -> memaddr (64 or 32)
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
602
diff
changeset
|
30 void destroy(); |
3 | 31 }; |
32 | |
33 #endif |