#pragma once #include #include #include "GenericWaypointManager.h" #include "QmlObjectListModel.h" #include "Settings.h" #include "AreaInterface.h" namespace WaypointManager { typedef GenericWaypointManager ManagerBase; class DefaultManager : public ManagerBase { public: DefaultManager() = delete; DefaultManager(Slicer *slicer, Settings *settings, AreaInterface *interface); virtual bool update() override; virtual bool next() override; virtual bool previous() override; virtual bool reset() override; protected: bool _insertMissionItem(size_t index, const QGeoCoordinate &c, bool doUpdate); bool _calcShortestPath(const QGeoCoordinate &start, const QGeoCoordinate &destination, QVector &path); AreaInterface *_areaInterface; private: bool _worker(); }; } // namespace WaypointManager