QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
SendMavlinkCommandState.h
Go to the documentation of this file.
1#pragma once
2
3#include "WaitStateBase.h"
4#include "QGCMAVLink.h"
5
6class Vehicle;
7
10{
11 Q_OBJECT
12 Q_DISABLE_COPY(SendMavlinkCommandState)
13
14public:
15 SendMavlinkCommandState(QState* parent, MAV_CMD command, double param1 = 0.0, double param2 = 0.0, double param3 = 0.0, double param4 = 0.0, double param5 = 0.0, double param6 = 0.0, double param7 = 0.0);
16 SendMavlinkCommandState(QState* parent);
17
18 void setup(MAV_CMD command, double param1 = 0.0, double param2 = 0.0, double param3 = 0.0, double param4 = 0.0, double param5 = 0.0, double param6 = 0.0, double param7 = 0.0);
19
20signals:
21 void success();
22
23protected:
24 void connectWaitSignal() override;
25 void disconnectWaitSignal() override;
26 void onWaitEntered() override;
27
28private slots:
29 void _mavCommandResult(int vehicleId, int targetComponent, int command, int ackResult, int failureCode);
30
31private:
32 MAV_CMD _command = MAV_CMD(0);
33 double _param1 = 0.0;
34 double _param2 = 0.0;
35 double _param3 = 0.0;
36 double _param4 = 0.0;
37 double _param5 = 0.0;
38 double _param6 = 0.0;
39 double _param7 = 0.0;
40 bool _configured = false;
41};
Sends the specified MAVLink command to the vehicle and waits for the result.
void connectWaitSignal() override
Subclasses override to set up their signal connections.
void disconnectWaitSignal() override
Subclasses override to tear down their signal connections.
void onWaitEntered() override
Called when the state is entered - subclasses should call base implementation.
void setup(MAV_CMD command, double param1=0.0, double param2=0.0, double param3=0.0, double param4=0.0, double param5=0.0, double param6=0.0, double param7=0.0)