QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
UDPConfiguration Class Reference

#include <UDPLink.h>

+ Inheritance diagram for UDPConfiguration:
+ Collaboration diagram for UDPConfiguration:

Signals

void hostListChanged ()
 
void localPortChanged ()
 
- Signals inherited from LinkConfiguration
void nameChanged (const QString &name)
 
void linkChanged ()
 
void linkActiveChanged ()
 
void dynamicChanged ()
 
void autoConnectChanged ()
 
void highLatencyChanged ()
 

Public Member Functions

 UDPConfiguration (const QString &name, QObject *parent=nullptr)
 
 UDPConfiguration (const UDPConfiguration *source, QObject *parent=nullptr)
 
virtual ~UDPConfiguration ()
 
Q_INVOKABLE void addHost (const QString &host)
 
Q_INVOKABLE void addHost (const QString &host, quint16 port)
 
Q_INVOKABLE void removeHost (const QString &host)
 
Q_INVOKABLE void removeHost (const QString &host, quint16 port)
 
LinkType type () const override
 
void copyFrom (const LinkConfiguration *source) override
 
void loadSettings (QSettings &settings, const QString &root) override
 
void saveSettings (QSettings &settings, const QString &root) const override
 
QString settingsURL () const override
 Settings URL, Pure virtual method providing the URL for the (QML) settings dialog.
 
QString settingsTitle () const override
 Settings Title, Pure virtual method providing the Title for the (QML) settings dialog.
 
QStringList hostList () const
 
QList< std::shared_ptr< UDPClient > > targetHosts () const
 
QStringList resolveHosts () const
 Returns the hostnames that failed to resolve.
 
bool requireResolvedHosts () const
 When false, connect proceeds (listening) even if a target host fails to resolve.
 
void setRequireResolvedHosts (bool require)
 
quint16 localPort () const
 
void setLocalPort (quint16 port)
 
- Public Member Functions inherited from LinkConfiguration
 LinkConfiguration (const QString &name, QObject *parent=nullptr)
 
 LinkConfiguration (const LinkConfiguration *copy, QObject *parent=nullptr)
 
virtual ~LinkConfiguration ()
 
QString name () const
 
void setName (const QString &name)
 
LinkInterface * link () const
 
void setLink (const std::shared_ptr< LinkInterface > link)
 
bool linkActive () const
 
bool isDynamic () const
 
void setDynamic (bool dynamic=true)
 Set if this is this a dynamic configuration. (decided at runtime)
 
bool isForwarding () const
 
void setForwarding (bool forwarding=true)
 Set if this is this a forwarding link configuration. (decided at runtime)
 
bool isAutoConnect () const
 
void setAutoConnect (bool autoc=true)
 Set if this is this an Auto Connect configuration.
 
bool suppressAutoReconnect () const
 
void setSuppressAutoReconnect (bool suppress)
 
bool autoConnectStarted () const
 
void setAutoConnectStarted (bool started)
 
bool reconnectReady () const
 
int reconnectAttempts () const
 
void noteReconnectAttempt ()
 
void resetReconnectBackoff ()
 
void noteConnected ()
 
void noteDisconnected ()
 Reset backoff only if the link stayed up long enough to count as working.
 
bool isHighLatency () const
 
void setHighLatency (bool hl=false)
 Set if this is this an High Latency configuration.
 

Additional Inherited Members

- Public Types inherited from LinkConfiguration
enum  LinkType {
  TypeSerial , TypeUdp , TypeTcp , TypeBluetooth ,
  TypeLogReplay , TypeLast
}
 
- Static Public Member Functions inherited from LinkConfiguration
static LinkConfiguration * createSettings (int type, const QString &name)
 
static LinkConfiguration * duplicateSettings (const LinkConfiguration *source)
 
static QString settingsRoot ()
 
- Protected Attributes inherited from LinkConfiguration
std::weak_ptr< LinkInterface > _link
 Link currently using this configuration (if any)
 

Detailed Description

Definition at line 59 of file UDPLink.h.

Constructor & Destructor Documentation

◆ UDPConfiguration() [1/2]

UDPConfiguration::UDPConfiguration ( const QString &  name,
QObject *  parent = nullptr 
)
explicit

Definition at line 46 of file UDPLink.cc.

◆ UDPConfiguration() [2/2]

UDPConfiguration::UDPConfiguration ( const UDPConfiguration *  source,
QObject *  parent = nullptr 
)
explicit

Definition at line 51 of file UDPLink.cc.

References copyFrom().

◆ ~UDPConfiguration()

UDPConfiguration::~UDPConfiguration ( )
virtual

Definition at line 59 of file UDPLink.cc.

Member Function Documentation

◆ addHost() [1/2]

void UDPConfiguration::addHost ( const QString &  host)

Definition at line 129 of file UDPLink.cc.

References addHost().

Referenced by addHost(), LinkManager::createMavlinkForwardingSupportLink(), and loadSettings().

◆ addHost() [2/2]

void UDPConfiguration::addHost ( const QString &  host,
quint16  port 
)

Definition at line 147 of file UDPLink.cc.

◆ copyFrom()

void UDPConfiguration::copyFrom ( const LinkConfiguration *  source)
overridevirtual

Copy instance data, When manipulating data, you create a copy of the configuration using the copy constructor, edit it and then transfer its content to the original using this method.

Parameters
[in]sourceThe source instance (the edited copy)

Reimplemented from LinkConfiguration.

Definition at line 66 of file UDPLink.cc.

References LinkConfiguration::copyFrom(), localPort(), requireResolvedHosts(), setLocalPort(), setRequireResolvedHosts(), and targetHosts().

Referenced by UDPConfiguration().

◆ hostList()

QStringList UDPConfiguration::hostList ( ) const
inline

Definition at line 83 of file UDPLink.h.

◆ hostListChanged

void UDPConfiguration::hostListChanged ( )
signal

◆ loadSettings()

void UDPConfiguration::loadSettings ( QSettings &  settings,
const QString &  root 
)
overridevirtual

Load settings, Pure virtual method telling the instance to load its configuration.

Parameters
[in]settingsThe QSettings instance to use
[in]rootThe root path of the setting.

Implements LinkConfiguration.

Definition at line 89 of file UDPLink.cc.

References addHost(), SettingsManager::autoConnectSettings(), SettingsManager::instance(), and setLocalPort().

◆ localPort()

quint16 UDPConfiguration::localPort ( ) const
inline

Definition at line 94 of file UDPLink.h.

Referenced by UDPWorker::connectLink(), and copyFrom().

◆ localPortChanged

void UDPConfiguration::localPortChanged ( )
signal

Referenced by setLocalPort().

◆ removeHost() [1/2]

void UDPConfiguration::removeHost ( const QString &  host)

Definition at line 165 of file UDPLink.cc.

References removeHost().

Referenced by removeHost().

◆ removeHost() [2/2]

void UDPConfiguration::removeHost ( const QString &  host,
quint16  port 
)

Definition at line 180 of file UDPLink.cc.

◆ requireResolvedHosts()

bool UDPConfiguration::requireResolvedHosts ( ) const
inline

When false, connect proceeds (listening) even if a target host fails to resolve.

Definition at line 90 of file UDPLink.h.

Referenced by UDPWorker::connectLink(), and copyFrom().

◆ resolveHosts()

QStringList UDPConfiguration::resolveHosts ( ) const

Returns the hostnames that failed to resolve.

Definition at line 220 of file UDPLink.cc.

Referenced by UDPWorker::connectLink().

◆ saveSettings()

void UDPConfiguration::saveSettings ( QSettings &  settings,
const QString &  root 
) const
overridevirtual

Save settings, Pure virtual method telling the instance to save its configuration.

Parameters
[in]settingsThe QSettings instance to use
[in]rootThe root path of the setting.

Implements LinkConfiguration.

Definition at line 110 of file UDPLink.cc.

◆ setLocalPort()

void UDPConfiguration::setLocalPort ( quint16  port)
inline

Definition at line 95 of file UDPLink.h.

References localPortChanged().

Referenced by copyFrom(), and loadSettings().

◆ setRequireResolvedHosts()

void UDPConfiguration::setRequireResolvedHosts ( bool  require)
inline

Definition at line 92 of file UDPLink.h.

Referenced by copyFrom().

◆ settingsTitle()

QString UDPConfiguration::settingsTitle ( ) const
inlineoverridevirtual

Settings Title, Pure virtual method providing the Title for the (QML) settings dialog.

Implements LinkConfiguration.

Definition at line 81 of file UDPLink.h.

◆ settingsURL()

QString UDPConfiguration::settingsURL ( ) const
inlineoverridevirtual

Settings URL, Pure virtual method providing the URL for the (QML) settings dialog.

Implements LinkConfiguration.

Definition at line 80 of file UDPLink.h.

◆ targetHosts()

QList< std::shared_ptr< UDPClient > > UDPConfiguration::targetHosts ( ) const
inline

Definition at line 84 of file UDPLink.h.

Referenced by copyFrom(), and UDPWorker::writeData().

◆ type()

LinkType UDPConfiguration::type ( ) const
inlineoverridevirtual

Connection type, pure virtual method returning one of the -TypeXxx types above.

Returns
The type of links these settings belong to.

Implements LinkConfiguration.

Definition at line 76 of file UDPLink.h.

References LinkConfiguration::TypeUdp.


The documentation for this class was generated from the following files: