QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
PlanElementController.h
Go to the documentation of this file.
1#pragma once
2
3#include <QtCore/QObject>
4
6
7
12class PlanElementController : public QObject
13{
14 Q_OBJECT
15 Q_MOC_INCLUDE("PlanMasterController.h")
16
17public:
20
22 Q_PROPERTY(bool supported READ supported NOTIFY supportedChanged)
23 Q_PROPERTY(bool containsItems READ containsItems NOTIFY containsItemsChanged)
24 Q_PROPERTY(bool syncInProgress READ syncInProgress NOTIFY syncInProgressChanged)
25 Q_PROPERTY(bool dirty READ dirty WRITE setDirty NOTIFY dirtyChanged)
26
28
30 virtual void start(bool flyView);
31
32 virtual void save (QJsonObject& json) = 0;
33 virtual bool load (const QJsonObject& json, QString& errorString) = 0;
34 virtual void loadFromVehicle (void) = 0;
35 virtual void removeAll (void) = 0;
36 virtual bool showPlanFromManagerVehicle (void) = 0;
37
38 virtual bool supported (void) const = 0;
39 virtual bool containsItems (void) const = 0;
40 virtual bool syncInProgress (void) const = 0;
41 virtual bool dirty (void) const = 0;
42 virtual void setDirty (bool dirty) = 0;
43
46 virtual void sendToVehicle(void) = 0;
47
50 virtual void removeAllFromVehicle(void) = 0;
51
52signals:
56 void dirtyChanged (bool dirty);
57 void sendComplete (void);
58 void removeAllComplete (void);
59
60protected:
63};
QString errorString
This is the abstract base clas for Plan Element controllers.
void supportedChanged(bool supported)
void syncInProgressChanged(bool syncInProgress)
PlanMasterController * masterController(void)
~PlanElementController()
true: unsaved/sent changes are present, false: no changes since last save/send
virtual void save(QJsonObject &json)=0
void removeAllComplete(void)
virtual bool syncInProgress(void) const =0
virtual bool supported(void) const =0
true: controller is waiting for the current load to complete
virtual void setDirty(bool dirty)=0
virtual void removeAllFromVehicle(void)=0
virtual void sendToVehicle(void)=0
virtual bool load(const QJsonObject &json, QString &errorString)=0
virtual bool dirty(void) const =0
PlanMasterController * _masterController
virtual bool showPlanFromManagerVehicle(void)=0
virtual void start(bool flyView)
Should be called immediately upon Component.onCompleted.
virtual void removeAll(void)=0
Removes all from controller only.
void dirtyChanged(bool dirty)
virtual bool containsItems(void) const =0
virtual void loadFromVehicle(void)=0
Master controller for mission, fence, rally.