#include "socket.h"
#include <QByteArray>
#include <QList>
using namespace std;
explicit Socket
::Subscriber(ZMQContext
& context,
const QString
& address,
const QString
& topic,
QObject *parent
= 0) : super(parent)
, address_("127.0.0.1:5558"), topic_("")
, socket_(0)
{
socket_ = context.createSocket(ZMQSocket::TYP_SUB, this);
socket_->setObjectName("Subscriber.Socket.socket(SUB)");
connect(socket_, SIGNAL(recvString(const QList<QByteArray>&)), SLOT(recvString(const QList<QByteArray>&)));
}
explicit Socket
::Subscriber2(ZMQContext
& context,
const QString
& address,
const QString
& topic,
QObject *parent
= 0) : super(parent)
, address2_("127.0.0.1:5559"), topic2_("")
, socket2_(0)
{
socket2_ = context.createSocket(ZMQSocket::TYP_SUB, this);
socket2_->setObjectName("Subscriber2.Socket.socket(SUB)");
connect(socket2_, SIGNAL(recvString(const QList<QByteArray>&)), SLOT(recvString(const QList<QByteArray>&)));
}
explicit Socket
::Ventilator(ZMQContext
& context,
const QString
& ventilatorAddress,
QObject* parent
= 0) : super(parent)
, ventilatorAddress_("127.0.0.1:5557"), ventilator_(0)
{
ventilator_ = context.createSocket(ZMQSocket::TYP_PUSH, this);
ventilator_->setObjectName("Ventilator.Socket.ventilator(PUSH)");
}
void Socket::startImpl()
{
socket_->subscribeTo(topic_);
socket_->connectTo(address_);
socket2_->subscribeTo(topic2_);
socket2_->connectTo(address2_);
ventilator_->connectTo(ventilatorAddress_);
}
{
this->message = message;
}
void Socket::sendString()
{
ventilator_->sendMessage(send);
}
void Socket::recvString(const QList<QByteArray>& message)
{
qDebug() << "Subscriber> " << message;
}