annotate paper/src/akashaContext.h @ 100:ebe838b83ada

Self review
author atton <atton@cr.ie.u-ryukyu.ac.jp>
date Sun, 12 Feb 2017 11:52:20 +0900
parents 243d8dc4a292
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
27
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
1 // Data Segment
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
2 union Data {
100
ebe838b83ada Self review
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents: 27
diff changeset
3 struct Tree { /* ... 赤黒木の定義と同様 */ } tree;
ebe838b83ada Self review
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents: 27
diff changeset
4 struct Node { /* ... 赤黒木の定義と同様 */ } node;
27
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
5
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
6 /* for verification */
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
7 struct IterElem {
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
8 unsigned int val;
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
9 struct IterElem* next;
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
10 } iterElem;
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
11 struct Iterator {
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
12 struct Tree* tree;
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
13 struct Iterator* previousDepth;
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
14 struct IterElem* head;
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
15 struct IterElem* last;
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
16 unsigned int iteratedValue;
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
17 unsigned long iteratedPointDataNum;
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
18 void* iteratedPointHeap;
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
19 } iterator;
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
20 struct AkashaInfo {
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
21 unsigned int minHeight;
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
22 unsigned int maxHeight;
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
23 struct AkashaNode* akashaNode;
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
24 } akashaInfo;
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
25 struct AkashaNode {
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
26 unsigned int height;
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
27 struct Node* node;
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
28 struct AkashaNode* nextAkashaNode;
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
29 } akashaNode;
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
30 };
243d8dc4a292 Add akasha description
atton <atton@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
31