void QstProtocol::send( const QstMessage &message ) { QByteArray data; if (!message.isUnpacked()) { data = message.m_buffer; } else if (!message.m_map.isEmpty()) { QDataStream s(&data, QIODevice::WriteOnly); s.setVersion(QDataStream::Qt_4_6); s << message.m_map; } QDataStream tmp(this); tmp.setVersion(QDataStream::Qt_4_6); sendPreamble(&tmp, message); // phase 2 quint32 len = data.count(); tmp << len; if (len > 0) { // phase 3 tmp.writeRawData( data.data(), (int)len ); } // phase 4 tmp << TEST_MSG_END; flush(); // Force socket to send data now }
/** * \brief Send an Oregon message * \param data The Oregon message */ void OSV2::sendOregon() { sendPreamble(); sendData(OregonMessageBuffer, getMessageSize()); sendPostamble(); }