QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
WaitForMavlinkMessageState.h
Go to the documentation of this file.
1
#pragma once
2
3
#include "
WaitStateBase.h
"
4
#include "
QGCMAVLink.h
"
5
6
#include <cstdint>
7
#include <functional>
8
9
class
Vehicle
;
10
13
class
WaitForMavlinkMessageState
:
public
WaitStateBase
14
{
15
Q_OBJECT
16
Q_DISABLE_COPY(
WaitForMavlinkMessageState
)
17
18
public
:
19
using
Predicate
= std::function<bool(
const
mavlink_message_t
&message)>;
20
25
WaitForMavlinkMessageState
(QState *parent, uint32_t
messageId
,
int
timeoutMsecs
,
Predicate
predicate =
Predicate
());
26
28
uint32_t
messageId
()
const
{
return
_messageId; }
29
30
protected
:
31
void
connectWaitSignal
()
override
;
32
void
disconnectWaitSignal
()
override
;
33
34
private
slots:
35
void
_messageReceived(
const
mavlink_message_t
&message);
36
37
private
:
38
uint32_t _messageId = 0U;
39
Predicate
_predicate;
40
};
mavlink_message_t
struct __mavlink_message mavlink_message_t
Definition
QGCCorePlugin.h:23
QGCMAVLink.h
WaitStateBase.h
Vehicle
Definition
Vehicle.h:82
WaitForMavlinkMessageState
Definition
WaitForMavlinkMessageState.h:14
WaitForMavlinkMessageState::connectWaitSignal
void connectWaitSignal() override
Subclasses override to set up their signal connections.
Definition
WaitForMavlinkMessageState.cc:14
WaitForMavlinkMessageState::messageId
uint32_t messageId() const
Definition
WaitForMavlinkMessageState.h:28
WaitForMavlinkMessageState::disconnectWaitSignal
void disconnectWaitSignal() override
Subclasses override to tear down their signal connections.
Definition
WaitForMavlinkMessageState.cc:19
WaitForMavlinkMessageState::Predicate
std::function< bool(const mavlink_message_t &message)> Predicate
Definition
WaitForMavlinkMessageState.h:19
WaitStateBase
Definition
WaitStateBase.h:10
WaitStateBase::timeoutMsecs
int timeoutMsecs() const
Definition
WaitStateBase.h:61
src
Utilities
StateMachine
States
WaitForMavlinkMessageState.h
Generated by
1.9.8