diff paper/source/context.h @ 8:bb5fab31cf41

add source file
author Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
date Tue, 05 May 2015 17:49:31 +0900
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/paper/source/context.h	Tue May 05 17:49:31 2015 +0900
@@ -0,0 +1,47 @@
+/* Context definition */
+
+#define ALLOCATE_SIZE 1024
+
+enum Code {
+    Code1,
+    Code2,
+    Allocator,
+};
+
+enum UniqueData {
+    Allocate,
+    Tree,
+};
+
+struct Context {
+    int codeNum;
+    __code (**code) (struct Context *);
+    void* heap_start;
+    void* heap;
+    long dataSize;
+    int dataNum;
+    union Data **data;
+};
+
+union Data {
+    struct Tree {
+        union Data* root;
+        union Data* current;
+        union Data* prev;
+        int result;
+    } tree;
+    struct Node {
+        int key;
+        int value;
+        enum Color {
+            Red,
+            Black,
+        } color;
+        union Data* left;
+        union Data* right;
+    } node;
+    struct Allocate {
+        long size;
+        enum Code next;
+    } allocate;
+};