| 123456789101112131415161718192021222324252627282930313233343536 |
- #include "pqtcpsocket.h"
- namespace PQ {
- PQTcpSocket::PQTcpSocket(QObject *parent) : QTcpSocket(parent),_msg(false)
- {
- connect(&_msg,SIGNAL(revicedMSG(MSGHeader,QByteArray)),this,SIGNAL(revicedMSG(MSGHeader,QByteArray)));
- connect(&_msg,SIGNAL(hasError()),this,SLOT(msgError()));
- connect(this,SIGNAL(readyRead()),this,SLOT(readSocketData()));
- }
- PQTcpSocket::~PQTcpSocket()
- {}
- void PQTcpSocket::msgError()
- {
- this->setErrorString("message handle error!");
- emit error(QAbstractSocket::UnknownSocketError);
- this->close();
- }
- void PQTcpSocket::readSocketData()
- {
- _msg.readMsg(this->readAll());
- }
- void PQTcpSocket::writeMessage(MSGHeader header, const QByteArray & byte)
- {
- header.length = byte.length();
- this->write(header.buildArray());
- if(header.length > 0)
- this->write(byte);
- }
- }
|