+ Msp::GL::Camera camera;
+ Msp::GL::Lighting lighting;
+ Msp::GL::Light light;
+ Msp::GL::Pipeline pipeline;
+ Msp::GL::Mesh arrow_mesh;
+
+ MainPanel *main_panel;
+ std::list<TrainPanel *> train_panels;
+ Msp::Time::TimeStamp status_timeout;
+ bool picking;
+ Marklin::Track *picking_track;
+ int picking_entry;
+ Marklin::Path3D *picking_path;
+
+public:
+ Engineer(int argc, char **argv);
+ ~Engineer();
+
+ const Msp::GLtk::Resources &get_ui_resources() const { return ui_res; }
+ Msp::GLtk::Root &get_root() const { return *root; }
+ const Marklin::Catalogue &get_catalogue() const { return catalogue; }
+ Marklin::Layout &get_layout() { return layout; }
+ void set_status(const std::string &);
+ void pick(bool);
+ int main();
+ void quit() { exit(0); }
+private: