]> git.tdb.fi Git - r2c2.git/blobdiff - source/engineer/engineer.h
Add vehicles
[r2c2.git] / source / engineer / engineer.h
index 48d60a2df9ae82679c75615852ed86d6f3c9aaf3..8ce848e8779f971f408c077729b032e1f298d6ef 100644 (file)
@@ -20,6 +20,7 @@ Distributed under the GPL
 #include "libmarklin/train.h"
 #include "3d/layout.h"
 #include "3d/overlay.h"
+#include "3d/path.h"
 #include "network/server.h"
 #include "options.h"
 
@@ -29,6 +30,9 @@ class TrainProperties;
 
 class Engineer: public Msp::Application
 {
+public:
+       sigc::signal<void, Marklin::Track *, int> signal_pick_done;
+
 private:
        Options options;
 
@@ -52,9 +56,11 @@ private:
 
        MainPanel *main_panel;
        std::list<TrainPanel *> train_panels;
-       Marklin::Train *placing_train;
-       Marklin::Block *placing_block;
-       unsigned placing_entry;
+       Msp::Time::TimeStamp status_timeout;
+       bool picking;
+       Marklin::Track *picking_track;
+       int picking_entry;
+       Marklin::Path3D *picking_path;
 
 public:
        Engineer(int argc, char **argv);
@@ -64,7 +70,8 @@ public:
        Msp::GLtk::Root &get_root() const { return *root; }
        const Marklin::Catalogue &get_catalogue() const { return catalogue; }
        Marklin::Layout &get_layout() { return layout; }
-       void place_train(Marklin::Train &);
+       void set_status(const std::string &);
+       void pick(bool);
        int main();
        void quit() { exit(0); }
 private: