culturered_client/PhotoVideoPlayer/ZMQClient.cpp

49 lines
1.2 KiB
C++
Raw Normal View History

2024-09-07 03:34:44 +00:00
#include "ZMQClient.h"
#include <QDebug>
ZMQClient::ZMQClient(QObject* parent)
: QObject(parent)
, ctx_(1)
, socket_(ctx_, zmq::socket_type::push){
}
ZMQClient::~ZMQClient() {
}
bool ZMQClient::ConnectToServer(const QString& address) {
std::string host("tcp://");
host += address.toStdString();
socket_.connect(host);
socket_.setsockopt(ZMQ_LINGER, 10);
//socket_.setsockopt()
return true;
}
bool ZMQClient::Send(const QString& message) {
if (!socket_.connected()) {
qDebug() << __FUNCTION__ << "is not connected " << message;
}
/* QByteArray block;
QDataStream out(&block, QIODevice::ReadWrite);
QDataStream out(m_socket);
out.setVersion(QDataStream::Qt_6_2);
out << message.toUtf8();*/
// m_socket->write(message.toUtf8());
std::string ss = message.toStdString();
zmq::message_t msg(ss.data(), ss.size());
try {
auto res = socket_.send(msg, zmq::send_flags::none);
qDebug() << __FUNCTION__ << message << " res:" << res.value();
}
catch (zmq::error_t e) {
const char* w = e.what();
qDebug() << __FUNCTION__ << w;
}
return true;
}