diff TaskManager/kernel/ppe/HTask.h @ 703:61b59376aec5

compatibility
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 14 Dec 2009 18:34:46 +0900
parents d3afc8777daa
children f725c6455d19
line wrap: on
line diff
--- a/TaskManager/kernel/ppe/HTask.h	Mon Dec 14 17:12:38 2009 +0900
+++ b/TaskManager/kernel/ppe/HTask.h	Mon Dec 14 18:34:46 2009 +0900
@@ -52,7 +52,51 @@
     Task *create_task_array(int task_id, int num_task, int num_param, int num_inData, int num_outData);
     Task *next_task_array(int task_id, Task *t);
     void spawn_task_array(Task *t);
+
+
+    int param_index;
+    int in_index;
+    int out_index;
+
+    private:
+
+// compatibility
+    public: // functions
+    void add_inData_t(memaddr addr, int size) {
+	Task *t = (Task*)rbuf;
+	t->set_inData_t(in_index++, addr,size);
+    }
+    void add_outData_t(memaddr addr, int size) {
+	Task *t = (Task*)rbuf;
+	t->set_outData_t(out_index++, addr,size);
+    }
+    void set_inData_t(int index, memaddr addr, int size) {
+	Task *t = (Task*)rbuf;
+	t->set_inData_t(index, addr,size);
+    }
+    void set_outData_t(int index, memaddr addr, int size) { 
+	Task *t = (Task*)rbuf;
+	t->set_inData_t(index, addr,size);
+    }
+    void add_param_t(memaddr param) {
+	Task *t = (Task*)rbuf;
+	t->set_param_t(param_index++, param);
+    }
+    void set_param_t(int index, memaddr param) {
+	Task *t = (Task*)rbuf;
+	t->set_param_t(index, param);
+    }
+
+#define add_param(param) add_param_t((memaddr)(param))
+#define set_param(index,param) set_param_t(index, (memaddr) (param))
+
+#define add_inData(addr, size)                  \
+    add_inData_t((memaddr)(addr), (size));
+#define add_outData(addr, size)                 \
+    add_outData_t((memaddr)(addr), (size));
+
 #endif
+
 };
 
 typedef HTask* HTaskPtr;