]> git.tdb.fi Git - r2c2.git/blobdiff - source/libr2c2/trainrouteplanner.h
Abort route planning if it takes too long
[r2c2.git] / source / libr2c2 / trainrouteplanner.h
index b76d663ab5f8caea318ec2bf612bc1d4ab9d83c4..c7572c0df41cb48c548fa2c4b0cb40f6afdd4453 100644 (file)
@@ -94,6 +94,7 @@ private:
                void advance(const Msp::Time::TimeDelta &);
                void advance_track(unsigned);
                void update_estimate();
+               bool is_viable() const;
        };
 
        struct RoutingStep
@@ -136,6 +137,7 @@ private:
        std::list<RoutingStep> steps;
        std::list<RoutingStep> queue;
        const RoutingStep *goal;
+       Msp::Time::TimeDelta timeout;
        Result result;
        PlanningThread *thread;
 
@@ -143,6 +145,7 @@ public:
        TrainRoutePlanner(Layout &);
        ~TrainRoutePlanner();
 
+       void set_timeout(const Msp::Time::TimeDelta &);
        Result plan();
        void plan_async();
        Result check();