Changeset 381:d72470496fbe in lemon0.x for src/work/marci
 Timestamp:
 04/23/04 10:32:18 (20 years ago)
 Branch:
 default
 Phase:
 public
 Convert:
 svn:c9d7d8f590d60310b91f818b3a526b0e/lemon/trunk@511
 File:

 1 edited
Legend:
 Unmodified
 Added
 Removed

src/work/marci/graph_wrapper.h
r380 r381 908 908 _G.s_false_t_true_map>first(n, _class); 909 909 } 910 //FIXME needed in new concept, important here 911 ClassNodeIt(const Node& _n) : n(_n) { } 910 912 operator Node() const { return n; } 911 913 }; … … 1012 1014 1013 1015 bool inSClass(const Node& n) const { 1014 return !( this>s_false_t_true_map[n]);1016 return !(*(this>s_false_t_true_map))[n]; 1015 1017 } 1016 1018 bool inTClass(const Node& n) const { 1017 return ( this>s_false_t_true_map[n]);1019 return (*(this>s_false_t_true_map))[n]; 1018 1020 } 1019 1021 }; … … 1027 1029 public: 1028 1030 class Node; 1031 friend class Node; 1029 1032 //GN, int 1030 1033 //0 normalis, 1 s, 2, true, ez az iteralasi sorrend, 1031 1034 //es a vege a false azaz (invalid, 3) 1032 1035 class NodeIt; 1036 friend class NodeIt; 1033 1037 //GNI, int 1034 1038 class Edge; 1039 friend class Edge; 1035 1040 //GE, int, GN 1036 1041 //0 normalis, 1 s>vmi, 2 vmi>t, ez a sorrend, 1037 1042 //invalid: (invalid, 3, invalid) 1038 1043 class OutEdgeIt; 1044 friend class OutEdgeIt; 1039 1045 //GO, int, GNI 1040 1046 //normalis pontbol (first, 0, invalid), ..., (invalid, 2, vmi), ... (invalid, 3, invalid) … … 1042 1048 //tbol (invalid, 3, invalid) 1043 1049 class InEdgeIt; 1050 friend class InEdgeIt; 1044 1051 //GI, int, GNI 1045 1052 //normalis pontbol (first, 0, invalid), ..., (invalid, 1, vmi), ... (invalid, 3, invalid) … … 1047 1054 //tbe (invalid, 2, first), ... (invalid, 3, invalid) 1048 1055 class EdgeIt; 1056 friend class EdgeIt; 1049 1057 //(first, 0, invalid) ... 1050 1058 //(invalid, 1, vmi) … … 1104 1112 n(_n), spec(_spec) { } 1105 1113 NodeIt(const Invalid& i) : n(i), spec(3) { } 1106 NodeIt(const GraphWrapper<Graph>& _G) : n(*(_G.graph)), spec(0) {1114 NodeIt(const stGraphWrapper<Graph>& _G) : n(*(_G.graph)), spec(0) { 1107 1115 if (!_G>valid(n)) spec=1; 1108 1116 } … … 1149 1157 } 1150 1158 OutEdgeIt(const Invalid& i) : e(i), spec(3), n(i) { } 1151 OutEdgeIt(const GraphWrapper<Graph>& _G, const Node& _n) {1159 OutEdgeIt(const stGraphWrapper<Graph>& _G, const Node& _n) { 1152 1160 switch (_n.spec) { 1153 1161 case 0 : 1154 if (_G.graph>inSClass ) { //S, van normalis kiel1162 if (_G.graph>inSClass(_n)) { //S, van normalis kiel 1155 1163 e=typename Graph::OutEdgeIt(*(_G.graph), 1156 1164 typename Graph::Node(_n)); … … 1192 1200 } 1193 1201 InEdgeIt(const Invalid& i) : e(i), spec(3), n(i) { } 1194 InEdgeIt(const GraphWrapper<Graph>& _G, const Node& _n) {1202 InEdgeIt(const stGraphWrapper<Graph>& _G, const Node& _n) { 1195 1203 switch (_n.spec) { 1196 1204 case 0 : 1197 if (_G.graph>inTClass ) { //T, van normalis beel1205 if (_G.graph>inTClass(_n)) { //T, van normalis beel 1198 1206 e=typename Graph::InEdgeIt(*(_G.graph), 1199 1207 typename Graph::Node(_n)); … … 1233 1241 e(_e), spec(_spec), n(_n) { } 1234 1242 EdgeIt(const Invalid& i) : e(i), spec(3), n(i) { } 1235 EdgeIt(const GraphWrapper<Graph>& _G) :1243 EdgeIt(const stGraphWrapper<Graph>& _G) : 1236 1244 e(*(_G.graph)), spec(0), n(INVALID) { 1237 1245 if (!_G.graph>valid(e)) {
Note: See TracChangeset
for help on using the changeset viewer.