From 2cd9e922c450c8d6d1e96e0e0723f169a9cff57b Mon Sep 17 00:00:00 2001 From: hehaoyang <1109196436@qq.com> Date: Sun, 4 Feb 2024 18:28:34 +0800 Subject: [PATCH] 20240204 --- .gitignore | 2 ++ HxBroadcast.cpp | 11 +++++++++-- HxBroadcast.h | 3 ++- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 2b022e3..b40ff8b 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,5 @@ Makefile* *.Release *.TMP ._* +moc_* +*.a \ No newline at end of file diff --git a/HxBroadcast.cpp b/HxBroadcast.cpp index 5c89bd5..c7496cd 100644 --- a/HxBroadcast.cpp +++ b/HxBroadcast.cpp @@ -8,10 +8,11 @@ HxBroadcast *broadcast = nullptr; HxBroadcast *HxBroadcast::context() { return broadcast; } -void HxBroadcast::initialization(int port) +void HxBroadcast::initialization(int port, QString ip) { broadcast = new HxBroadcast(); + broadcast->ip = ip; broadcast->port = port; broadcast->socket = new QUdpSocket(); connect(broadcast->socket, &QUdpSocket::readyRead, broadcast, &HxBroadcast::receive_ready_read); @@ -40,7 +41,13 @@ void HxBroadcast::publish_json(int action_type, std::initializer_listwriteDatagram(message.toUtf8(), QHostAddress::Broadcast, broadcast->port); } +void HxBroadcast::publish_achieve(QString message) +{ + if(ip.isEmpty()) + socket->writeDatagram(message.toUtf8(), QHostAddress::Broadcast, broadcast->port); + else + socket->writeDatagram(message.toUtf8(), QHostAddress(ip), broadcast->port); +} void HxBroadcast::receive_ready_read() { diff --git a/HxBroadcast.h b/HxBroadcast.h index 73a25c5..c023fc7 100644 --- a/HxBroadcast.h +++ b/HxBroadcast.h @@ -15,7 +15,7 @@ public: * * @param port 广播端口 */ - static void initialization(int port); + static void initialization(int port, QString ip = ""); /** * @brief 发布消息 @@ -52,6 +52,7 @@ private slots: private: int port; + QString ip; QUdpSocket *socket; };