annotate include/TaskManager/ListData.h @ 134:92fcce4330f3

CreateSpan で、三角形を二つに割る時、 元々x軸に水平な辺を持っていると、辺に対して half_triangle をかけてしまい 暴走するので、その応急処置。詳しくは CreateSpan::half_triangle
author gongo@gendarme.cr.ie.u-ryukyu.ac.jp
date Thu, 27 Nov 2008 16:10:55 +0900
parents 5c194c71eca8
children bcb81858aa62
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
1 #ifndef INCLUDED_LIST_DATA
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
2 #define INCLUDED_LIST_DATA
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
3
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
4 #ifndef INCLUDED_BASE_H_
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
5 # include "base.h"
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
6 #endif
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
7
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
8 #define MAX_LIST_DMA_SIZE 8
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
9
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
10 class ListElement {
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
11 public:
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
12 BASE_NEW_DELETE(ListElement);
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
13
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
14 int size;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
15 unsigned int addr;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
16 };
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
17
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
18 typedef ListElement* ListElementPtr;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
19
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
20 class ListData {
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
21 public:
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
22 BASE_NEW_DELETE(ListData);
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
23
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
24 int length; // The number of data (4)
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
25 int size; // Total size of data (4)
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
26 int a[2]; // for alignment
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
27 int bound[MAX_LIST_DMA_SIZE]; // (4 * MAX_LIST_DMA_SIZE)
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
28 ListElement element[MAX_LIST_DMA_SIZE]; // (8 * MAX_LIST_DMA_SIZE)
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
29
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
30 void clear(void) {
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
31 length = 0;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
32 size = 0;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
33 }
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
34 };
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
35
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
36 typedef ListData* ListDataPtr;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
37
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
38 #endif