Revize e60ade62
Přidáno uživatelem Jakub Hejman před téměř 4 roky(ů)
deltarobot/curvedataserver.cpp | ||
---|---|---|
25 | 25 |
|
26 | 26 |
_sockets.push_back(clientSocket); |
27 | 27 |
|
28 |
sendPreamble(clientSocket); |
|
28 | 29 |
} |
29 | 30 |
|
30 | 31 |
void CurveDataServer::onSocketStateChanged(QAbstractSocket::SocketState socketState) |
... | ... | |
102 | 103 |
for (QTcpSocket* socket : _sockets) { |
103 | 104 |
socket->write(message); |
104 | 105 |
} |
105 |
qDebug() << message.toHex(); |
|
106 |
qDebug() << x << " " << y << " " << z; |
|
106 |
//qDebug() << message.toHex(); |
|
107 |
//qDebug() << x << " " << y << " " << z; |
|
108 |
} |
|
109 |
|
|
110 |
|
|
111 |
void CurveDataServer::sendPreamble(QTcpSocket *socket) |
|
112 |
{ |
|
113 |
sendProtocolMagic(socket); |
|
114 |
sendVersion(socket); |
|
115 |
} |
|
116 |
|
|
117 |
void CurveDataServer::sendProtocolMagic(QTcpSocket *socket) |
|
118 |
{ |
|
119 |
char *messageContent = "DeltaRVr"; |
|
120 |
QByteArray message(10, 0); |
|
121 |
message[0] = 0x01; |
|
122 |
message[1] = 0x30; |
|
123 |
|
|
124 |
for (int i = 0; i < 8; i++) |
|
125 |
{ |
|
126 |
message[i + 2] = messageContent[i]; |
|
127 |
} |
|
128 |
|
|
129 |
socket->write(message); |
|
130 |
|
|
131 |
qDebug() << "Sent Protocol Magic to" << socket->peerAddress(); |
|
132 |
//qDebug() << message.toHex(); |
|
133 |
} |
|
134 |
|
|
135 |
void CurveDataServer::sendVersion(QTcpSocket *socket) |
|
136 |
{ |
|
137 |
QByteArray message(6, 0); |
|
138 |
message[0] = 0x02; |
|
139 |
message[1] = 0x20; |
|
140 |
|
|
141 |
message[5] = 0x01; |
|
142 |
|
|
143 |
socket->write(message); |
|
144 |
|
|
145 |
qDebug() << "Sent Protocol Version to" << socket->peerAddress(); |
|
146 |
//qDebug() << message.toHex(); |
|
107 | 147 |
} |
deltarobot/curvedataserver.h | ||
---|---|---|
23 | 23 |
QByteArray *createMessageId(int sizeId, int typId); |
24 | 24 |
//QByteArray *appendFloatToMessage(QByteArray *message, float f); |
25 | 25 |
QByteArray *putFloatIntoMessage(QByteArray *message, int index, float f); |
26 |
void sendPreamble(QTcpSocket *socket); |
|
27 |
void sendProtocolMagic(QTcpSocket *socket); |
|
28 |
void sendVersion(QTcpSocket *socket); |
|
26 | 29 |
|
27 | 30 |
QTcpServer _server; |
28 | 31 |
QList<QTcpSocket*> _sockets; |
Také k dispozici: Unified diff
Re #8734 - Implement server-to-client preamble