summaryrefslogtreecommitdiffstats
path: root/src/knx/netip/qknxnetipserverdiscoveryagent.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/knx/netip/qknxnetipserverdiscoveryagent.h')
-rw-r--r--src/knx/netip/qknxnetipserverdiscoveryagent.h18
1 files changed, 16 insertions, 2 deletions
diff --git a/src/knx/netip/qknxnetipserverdiscoveryagent.h b/src/knx/netip/qknxnetipserverdiscoveryagent.h
index 0fd0455..b7bdf83 100644
--- a/src/knx/netip/qknxnetipserverdiscoveryagent.h
+++ b/src/knx/netip/qknxnetipserverdiscoveryagent.h
@@ -60,6 +60,7 @@ public:
None,
Network,
NotIPv4,
+ Timeout,
Unknown = 0x80
};
Q_ENUM(Error)
@@ -79,8 +80,17 @@ public:
Q_ENUM(DiscoveryMode)
Q_DECLARE_FLAGS(DiscoveryModes, DiscoveryMode)
+ enum class InterfaceType : quint8
+ {
+ Loopback = 0x01,
+ Ethernet = 0x02,
+ Wifi = 0x04
+ };
+ Q_ENUM(InterfaceType)
+ Q_DECLARE_FLAGS(InterfaceTypes, InterfaceType)
+
QKnxNetIpServerDiscoveryAgent(QObject *parent = nullptr);
- ~QKnxNetIpServerDiscoveryAgent();
+ ~QKnxNetIpServerDiscoveryAgent() override;
explicit QKnxNetIpServerDiscoveryAgent(const QHostAddress &localAddress,
QObject *parent = nullptr);
@@ -122,9 +132,12 @@ public:
public Q_SLOTS:
void start();
- void start(int timeout);
void stop();
+ void start(int timeout);
+ void start(const QVector<QHostAddress> &localAddresses);
+ void start(QKnxNetIpServerDiscoveryAgent::InterfaceTypes types);
+
Q_SIGNALS:
void started();
void finished();
@@ -137,6 +150,7 @@ private:
QKnxNetIpServerDiscoveryAgent(QKnxNetIpServerDiscoveryAgentPrivate &dd, QObject *parent);
};
Q_DECLARE_OPERATORS_FOR_FLAGS(QKnxNetIpServerDiscoveryAgent::DiscoveryModes)
+Q_DECLARE_OPERATORS_FOR_FLAGS(QKnxNetIpServerDiscoveryAgent::InterfaceTypes)
QT_END_NAMESPACE