Go to the source code of this file.
|
| #define | MAGIC 500 /* save 500 cubes before containment */ |
| |
|
| pcover | cv_sharp (pcover A, pcover B) |
| |
| pcover | cb_sharp (pcube c, pcover T) |
| |
| pcover | cb_recur_sharp (pcube c, pcover T, int first, int last, int level) |
| |
| pcover | sharp (pcube a, pcube b) |
| |
| pcover | make_disjoint (pcover A) |
| |
| pcover | cv_dsharp (pcover A, pcover B) |
| |
| pcover | cb1_dsharp (pcover T, pcube c) |
| |
| pcover | cb_dsharp (pcube c, pcover T) |
| |
| pcover | dsharp (pcube a, pcube b) |
| |
| pcover | cv_intersect (pcover A, pcover B) |
| |
◆ MAGIC
| #define MAGIC 500 /* save 500 cubes before containment */ |
◆ cb1_dsharp()
Definition at line 133 of file sharp.c.
136{
139
143 }
144 return R;
145}
#define foreach_set(R, last, p)
◆ cb_dsharp()
Definition at line 149 of file sharp.c.
152{
155
156 if (T->count == 0) {
158 } else {
164 Y = Y1;
165 }
166 }
167 return Y;
168}
#define GETSET(family, index)
◆ cb_recur_sharp()
Definition at line 52 of file sharp.c.
56{
58 int middle;
59
60 if (first == last) {
62 } else {
63 middle = (first + last) / 2;
68 printf("# SHARP[%d]: %4d = %4d x %4d, time = %s\n",
69 level, temp->count, left->count, right->count,
71 (void) fflush(stdout);
72 }
75 }
76 return temp;
77}
ABC_NAMESPACE_IMPL_START long start_time
◆ cb_sharp()
Definition at line 37 of file sharp.c.
40{
41 if (T->count == 0) {
43 } else {
46 }
47 return T;
48}
◆ cv_dsharp()
Definition at line 118 of file sharp.c.
120{
123
127 }
128 return T;
129}
◆ cv_intersect()
Definition at line 216 of file sharp.c.
218{
219 register pcube pi, pj, lasti, lastj, pt;
221
222
224 pt = T->data;
225
226
231 if (++T->count >= T->capacity) {
232 if (Tsave == NULL)
234 else
237 pt = T->data;
238 } else
239 pt += T->wsize;
240 }
241 }
242 }
243
244
245 if (Tsave == NULL)
247 else
249 return Tsave;
250}
◆ cv_sharp()
◆ dsharp()
Definition at line 172 of file sharp.c.
174{
175 register pcube mask, diff, and, temp, temp1 =
cube.temp[0];
178
180
186
188
189
190 temp =
GETSET(r, r->count++);
192
193
196
197
201 }
202 }
206 } else {
208 }
209 return r;
210}
#define INLINEset_diff(r, a, b)
#define INLINEset_or(r, a, b)
#define INLINEset_and(r, a, b)
◆ make_disjoint()
Definition at line 102 of file sharp.c.
104{
106 register pset last,
p;
107
112 }
113 return R;
114}
◆ sharp()
Definition at line 81 of file sharp.c.
83{
87
94 }
95 }
96 } else {
98 }
99 return r;
100}
◆ start_time