Mercurial > hg > Game > Cerium
annotate TaskManager/kernel/ppe/Threads.h @ 1179:5393bebe0956 draft
CpuThreads update
author | Daichi TOMA |
---|---|
date | Tue, 21 Jun 2011 19:50:53 +0900 |
parents | 1b9418af3127 |
children | 26dea600d4cd |
rev | line source |
---|---|
817 | 1 #ifndef INCLUDED_THREADS |
2 #define INCLUDED_THREADS | |
3 | |
4 #include <pthread.h> | |
1179 | 5 #include "base.h" |
6 #include "types.h" | |
817 | 7 |
8 | |
9 class Threads { | |
10 public: | |
895
b662e9dd26b0
add alignment of classes in SPU
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
824
diff
changeset
|
11 BASE_NEW_DELETE(Threads); |
b662e9dd26b0
add alignment of classes in SPU
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
824
diff
changeset
|
12 |
817 | 13 /* constructor */ |
824 | 14 Threads(int num = 1) {}; |
15 virtual ~Threads() {}; | |
817 | 16 |
17 /* functions */ | |
1179 | 18 //virtual void init() = 0; |
19 virtual void init() {}; | |
817 | 20 virtual int get_mail(int speid, int count, memaddr *ret) = 0; // BLOCKING |
21 virtual int has_mail(int speid, int count, memaddr *ret) = 0; // NONBLOCK | |
22 virtual void send_mail(int speid, int num, memaddr *data) = 0; // BLOCKING | |
23 | |
24 /* variables */ | |
25 pthread_t *threads; | |
26 int cpu_num; | |
899 | 27 } ; |
817 | 28 |
29 #endif |