QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
SerialAutoConnect.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <QtCore/QMap>
4
5
#include <functional>
6
7
#include "
LinkConfiguration.h
"
8
#include "
SerialPortManager.h
"
9
11
class
SerialAutoConnect
12
{
13
friend
class
SerialAutoConnectTest
;
14
friend
class
LinkManagerTest
;
15
16
public
:
17
struct
Options
18
{
19
bool
pixhawk
=
false
;
20
bool
sikRadio
=
false
;
21
bool
openPilot
=
false
;
22
};
23
24
using
Connect
= std::function<void(
SharedLinkConfigurationPtr
&)>;
25
SerialAutoConnect
(
SerialPortManager
& ports,
Connect
connect);
26
~SerialAutoConnect
();
27
void
update
(
const
QList<SerialPortManager::Port>& ports,
const
Options
& options);
28
29
private
:
30
static
bool
_allowed(
QGCSerialPortInfo::BoardType_t
boardType,
const
Options
& options);
31
32
struct
Identity
33
{
34
QString physicalDeviceId;
35
QGCSerialPortInfo::BoardType_t
boardType;
36
bool
bootloader;
37
bool
operator==(
const
Identity&)
const
=
default
;
38
};
39
40
SerialPortManager
& _ports;
41
Connect
_connect;
42
QMap<QString, Identity> _identities;
43
SerialPortSettleTracker
_waitingPorts;
44
QMap<QString, SharedLinkConfigurationPtr> _configs;
45
};
LinkConfiguration.h
SharedLinkConfigurationPtr
std::shared_ptr< LinkConfiguration > SharedLinkConfigurationPtr
Definition
LinkConfiguration.h:181
SerialPortManager.h
QGCSerialPortInfo::BoardType_t
BoardType_t
Definition
QGCSerialPortInfo.h:25
SerialAutoConnect
Application-thread MAVLink serial discovery. LinkManager owns creation and live links.
Definition
SerialAutoConnect.h:12
SerialAutoConnect::SerialAutoConnectTest
friend class SerialAutoConnectTest
Definition
SerialAutoConnect.h:13
SerialAutoConnect::Connect
std::function< void(SharedLinkConfigurationPtr &)> Connect
Definition
SerialAutoConnect.h:24
SerialAutoConnect::~SerialAutoConnect
~SerialAutoConnect()
Definition
SerialAutoConnect.cc:21
SerialAutoConnect::update
void update(const QList< SerialPortManager::Port > &ports, const Options &options)
Definition
SerialAutoConnect.cc:26
SerialAutoConnect::LinkManagerTest
friend class LinkManagerTest
Definition
SerialAutoConnect.h:14
SerialPortManager
Shared serial inventory and exclusive claims. Called on the application thread.
Definition
SerialPortManager.h:19
SerialPortSettleTracker
Definition
SerialPortManager.h:103
SerialAutoConnect::Options
Definition
SerialAutoConnect.h:18
SerialAutoConnect::Options::sikRadio
bool sikRadio
Definition
SerialAutoConnect.h:20
SerialAutoConnect::Options::pixhawk
bool pixhawk
Definition
SerialAutoConnect.h:19
SerialAutoConnect::Options::openPilot
bool openPilot
Definition
SerialAutoConnect.h:21
src
Comms
Serial
SerialAutoConnect.h
Generated by
1.9.8