This commit is contained in:
hehaoyang 2024-02-04 18:28:34 +08:00
parent b8cd983825
commit 2cd9e922c4
3 changed files with 13 additions and 3 deletions

2
.gitignore vendored
View File

@ -7,3 +7,5 @@ Makefile*
*.Release *.Release
*.TMP *.TMP
._* ._*
moc_*
*.a

View File

@ -8,10 +8,11 @@ HxBroadcast *broadcast = nullptr;
HxBroadcast *HxBroadcast::context() { return broadcast; } HxBroadcast *HxBroadcast::context() { return broadcast; }
void HxBroadcast::initialization(int port) void HxBroadcast::initialization(int port, QString ip)
{ {
broadcast = new HxBroadcast(); broadcast = new HxBroadcast();
broadcast->ip = ip;
broadcast->port = port; broadcast->port = port;
broadcast->socket = new QUdpSocket(); broadcast->socket = new QUdpSocket();
connect(broadcast->socket, &QUdpSocket::readyRead, broadcast, &HxBroadcast::receive_ready_read); connect(broadcast->socket, &QUdpSocket::readyRead, broadcast, &HxBroadcast::receive_ready_read);
@ -40,7 +41,13 @@ void HxBroadcast::publish_json(int action_type, std::initializer_list<QPair<QStr
publish_json(action_type, msginfo); publish_json(action_type, msginfo);
} }
void HxBroadcast::publish_achieve(QString message) { socket->writeDatagram(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() void HxBroadcast::receive_ready_read()
{ {

View File

@ -15,7 +15,7 @@ public:
* *
* @param port 广 * @param port 广
*/ */
static void initialization(int port); static void initialization(int port, QString ip = "");
/** /**
* @brief * @brief
@ -52,6 +52,7 @@ private slots:
private: private:
int port; int port;
QString ip;
QUdpSocket *socket; QUdpSocket *socket;
}; };