23 |
|
|
24 |
class Blop; |
class Blop; |
25 |
class Code; |
class Code; |
26 |
|
class DefKnoten; |
27 |
|
|
28 |
|
|
29 |
|
|
31 |
#define absort_fall 2 |
#define absort_fall 2 |
32 |
#define absort_semiglobal 3 |
#define absort_semiglobal 3 |
33 |
#define absort_global 4 |
#define absort_global 4 |
34 |
|
#define absort_nirgends 5 |
35 |
|
|
36 |
|
|
37 |
struct ort_absolut { |
struct ort_absolut { |
38 |
int art; |
int art; |
39 |
bool rechts; /** bei absort_global irrelevant */ |
bool rechts; /** bei absort_global und absort_nirgends irrelevant */ |
40 |
int x; /** nur bei absort_feld und absort_fall relevant. |
int x; /** nur bei absort_feld und absort_fall relevant. |
41 |
bei absort_fall zaehlt es mod 2 */ |
bei absort_fall zaehlt es mod 2 */ |
42 |
int y; /** nur bei absort_feld relevant */ |
int y; /** nur bei absort_feld relevant */ |
43 |
|
|
44 |
ort_absolut(int aart, bool arechts, int ax, int ay) : |
ort_absolut(int aart, bool arechts = false, int ax = 0, int ay = 0) : |
45 |
art(aart), rechts(arechts), x(ax), y(ay) {}; |
art(aart), rechts(arechts), x(ax), y(ay) {}; |
46 |
|
|
47 |
|
/** Darf finde() benutzt werden? */ |
48 |
bool korrekt(); |
bool korrekt(); |
49 |
|
|
50 |
Blop & finde(); |
Blop & finde(); |
51 |
|
|
52 |
|
__String toString() const; |
53 |
}; |
}; |
54 |
|
|
55 |
|
|
69 |
|
|
70 |
class Ort: public Definition { |
class Ort: public Definition { |
71 |
|
|
72 |
/** Siehe Konstanten ort_... */ |
/** Siehe Konstanten ortart_... */ |
73 |
int mArt; |
int mArt; |
74 |
|
|
75 |
int mAbsArt; /** nur relevant bei ortart_absolut */ |
int mAbsArt; /** nur relevant bei ortart_absolut */ |
83 |
/** ortart_hier */ |
/** ortart_hier */ |
84 |
Ort(); |
Ort(); |
85 |
|
|
86 |
|
/** ortart_relativ */ |
87 |
|
Ort(Code * x, Code * y = 0); |
88 |
|
|
89 |
|
/** ortart_absolut */ |
90 |
|
Ort(int absart, Code * x = 0, Code * y = 0); |
91 |
|
|
92 |
|
Ort(DefKnoten * knoten, const Ort & f, bool neueBusyNummern); |
93 |
|
|
94 |
ort_absolut berechne(ort_absolut vonhieraus, Blop & fuer_code); |
ort_absolut berechne(ort_absolut vonhieraus, Blop & fuer_code); |
95 |
|
|
96 |
~Ort(); |
~Ort(); |