39 #ifdef CHECK_MEMORY_LEAKS
41 #endif // CHECK_MEMORY_LEAKS
55 startPosM(startPos), haltingTimeThresholdM(haltingTimeThreshold),
56 haltingSpeedThresholdM(haltingSpeedThreshold), jamDistThresholdM(jamDistThreshold),
57 myStartLaneID(lane->getID()), myUsage(usage) {}
68 if (length > dlength) {
91 LengthVector::iterator leni =
myLengths.begin();
94 for (; leni !=
myLengths.end(); leni++, lanei++, deti++) {
95 if ((*leni) < length) {
101 assert(lv.size() > 0);
102 assert(dv.size() > 0);
109 MSLane* toExtend = lv.back();
112 if (predeccessors.size() == 0) {
115 const std::vector<MSLane*>& lanes = e.
getLanes();
116 int idx = (
int) distance(lanes.begin(), find(lanes.begin(), lanes.end(), toExtend));
117 while (predeccessors.size() == 0) {
118 if (idx - off >= 0) {
119 MSLane* tryMe = lanes[idx - off];
122 if (predeccessors.size() == 0 && idx + off < (
int) lanes.size()) {
123 MSLane* tryMe = lanes[idx + off];
136 for (std::vector<MSLane*>::const_iterator i = predeccessors.begin(); i != predeccessors.end(); i++) {
140 SUMOReal lanelen = length - clength;
174 std::vector<MSLane*> ret;
176 std::vector<MSEdge*>::const_iterator i = predEdges.begin();
177 for (; i != predEdges.end(); ++i) {
182 bool fastAbort =
false;
184 for (LaneVector::const_iterator j = cl->begin(); !fastAbort && j != cl->end(); j++) {
186 for (MSLinkCont::const_iterator k = lc.begin(); !fastAbort && k != lc.end(); k++) {
187 if ((*k)->getLane() == l) {
240 size_t ,
size_t )
const {
255 std::string ret = baseID + add + toString<size_t>(
bla++);