#ifndef CONTROLLER_H #define CONTROLLER_H #include #include "misc/fixc11.h" //#include "ipin/Scaler.h" //#include "ipin/StepLoggerWrapper.h" //#include "ipin/StepLoggerWrapperAndroid.h" class MainWindow; class MainMenu; class MapView; class NavController; #include template class Grid; class MyGridNode; class InfoWidget; class MapView3D; class MapView2D; class WiFiModel; class BeaconModel; namespace NM { template class NavMesh; class NavMeshTriangle; } namespace Floorplan { class IndoorMap; } class Controller : public QObject { Q_OBJECT public: /** ctor */ explicit Controller(); public: MapView3D* getMapView3D() const; MapView2D* getMapView2D() const; MainMenu* getMainMenu() const; InfoWidget* getInfoWidget() const; protected: // // scaling for the UAH building // IPINScaler scaler = IPINScaler(1869, 1869, 40.51312440, -3.34959080, -40.73112000, 0.07596002); // //StepLoggerWrapper* sl = nullptr; // StepLoggerWrapperAndroid* sl = nullptr; private slots: void onLoadButton(); void onDebugButton(); void onStartButton(); void onTransparentButton(); void onCameraButton(); void on3DButton(); private: void loadGrid(QDir dir); void loadNavMesh(QDir dir); MainWindow* mainWindow; Grid* grid = nullptr; NM::NavMesh* navMesh = nullptr; NavController* nav = nullptr; Floorplan::IndoorMap* im = nullptr; WiFiModel* wifiModel = nullptr; BeaconModel* bleModel = nullptr; }; #endif // CONTROLLER_H