@@ -40,43 +40,52 @@ public PrepareCHEdgeIterator setBaseNode(int node) {
40
40
}
41
41
42
42
public boolean next () {
43
- return iter ().next ();
43
+ assertBaseNodeSet ();
44
+ return chIterator .next ();
44
45
}
45
46
46
47
public int getEdge () {
47
- return iter ().getEdge ();
48
+ assertBaseNodeSet ();
49
+ return chIterator .getEdge ();
48
50
}
49
51
50
52
public int getBaseNode () {
51
- return iter ().getBaseNode ();
53
+ assertBaseNodeSet ();
54
+ return chIterator .getBaseNode ();
52
55
}
53
56
54
57
public int getAdjNode () {
55
- return iter ().getAdjNode ();
58
+ assertBaseNodeSet ();
59
+ return chIterator .getAdjNode ();
56
60
}
57
61
58
62
public int getOrigEdgeFirst () {
59
- return iter ().getOrigEdgeFirst ();
63
+ assertBaseNodeSet ();
64
+ return chIterator .getOrigEdgeFirst ();
60
65
}
61
66
62
67
public int getOrigEdgeLast () {
63
- return iter ().getOrigEdgeLast ();
68
+ assertBaseNodeSet ();
69
+ return chIterator .getOrigEdgeLast ();
64
70
}
65
71
66
72
public boolean isShortcut () {
67
- return iter ().isShortcut ();
73
+ assertBaseNodeSet ();
74
+ return chIterator .isShortcut ();
68
75
}
69
76
70
77
public double getWeight (boolean reverse ) {
71
78
if (isShortcut ()) {
72
- return iter () .getWeight ();
79
+ return chIterator .getWeight ();
73
80
} else {
74
- return weighting .calcWeight (iter (), reverse , EdgeIterator .NO_EDGE );
81
+ assertBaseNodeSet ();
82
+ return weighting .calcWeight (chIterator , reverse , EdgeIterator .NO_EDGE );
75
83
}
76
84
}
77
85
78
86
public void setWeight (double weight ) {
79
- iter ().setWeight (weight );
87
+ assertBaseNodeSet ();
88
+ chIterator .setWeight (weight );
80
89
}
81
90
82
91
@ Override
@@ -89,21 +98,21 @@ public String toString() {
89
98
}
90
99
91
100
int getMergeStatus (int flags ) {
92
- return iter ().getMergeStatus (flags );
101
+ assertBaseNodeSet ();
102
+ return chIterator .getMergeStatus (flags );
93
103
}
94
104
95
105
void setFlagsAndWeight (int flags , double weight ) {
96
- iter ().setFlagsAndWeight (flags , weight );
106
+ assertBaseNodeSet ();
107
+ chIterator .setFlagsAndWeight (flags , weight );
97
108
}
98
109
99
110
void setSkippedEdges (int skippedEdge1 , int skippedEdge2 ) {
100
- iter ().setSkippedEdges (skippedEdge1 , skippedEdge2 );
111
+ assertBaseNodeSet ();
112
+ chIterator .setSkippedEdges (skippedEdge1 , skippedEdge2 );
101
113
}
102
114
103
- private CHEdgeIterator iter () {
104
- if (chIterator == null ) {
105
- throw new IllegalStateException ("You need to call setBaseNode() first" );
106
- }
107
- return chIterator ;
115
+ private void assertBaseNodeSet () {
116
+ assert chIterator != null : "You need to call setBaseNode() before using the iterator" ;
108
117
}
109
118
}
0 commit comments