+void TrainRoutePlanner::RoutingStep::update_estimate()
+{
+ for(vector<TrainRoutingState>::const_iterator i=trains.begin(); i!=trains.end(); ++i)
+ {
+ if(i->remaining_estimate<Time::zero)
+ {
+ total_estimate = i->remaining_estimate;
+ return;
+ }
+
+ Time::TimeDelta t = time+i->remaining_estimate;
+ if(i==trains.begin() || t>total_estimate)
+ total_estimate = t;
+ }
+}
+