diff --git a/src/dsConnector.cpp b/src/dsConnector.cpp index 93785daf00435010088e86fdd2e7f159b23b8929..97f2c377401c12d1fd324bf5fc4475d2d6d96089 100644 --- a/src/dsConnector.cpp +++ b/src/dsConnector.cpp @@ -29,31 +29,25 @@ void DesignStudioConnector::receiveProject() { - qDebug() << "Reading data from Design Studio"; - emit networkStatusUpdated("Reading data from Design Studio"); QByteArray data = m_tcpSocket->readAll(); - qDebug() << "Data from Design Studio:" << data; - // if (data.startsWith(":qmlrc_project_starts:")) { - // qDebug() << "Received qmlrc_project"; - // emit networkStatusUpdated("Received qmlrc_project"); - // m_projectData.append(data.mid(21, data.size() - 21)); - // m_receivingData = true; - // } else if (data.contains(":qmlrc_project_ends:")) { - // qDebug() << "Received qmlrc_project_ends"; - // emit networkStatusUpdated("Received qmlrc_project_ends"); - // m_projectData.append(data.mid(0, data.size() - 20)); - // emit projectReceived(m_projectData); - // m_projectData.clear(); - // m_receivingData = false; - // } else if (m_receivingData) { - // qDebug() << "Received data:" << data; - // emit networkStatusUpdated("Receiving project data"); - // m_projectData.append(data); - // } else { - // qDebug() << "Received unknown data:" << data; - // emit networkStatusUpdated("Received unknown data"); - // } - m_projectData.append(data); + // qDebug() << "Data from Design Studio:" << data; + if (data.startsWith("qres")) { + qDebug() << "TCP:: Received project start delimeter"; + m_projectData.clear(); + m_projectData.append(data); + m_receivingData = true; + } else if (data.contains("::qmlrc-end::")) { + qDebug() << "TCP:: Received project end delimeter"; + // qDebug() << "TCP:: Last data sequence: " << data; + m_projectData.append(data.mid(0, data.size() - 13)); + emit projectReceived(m_projectData); + m_receivingData = false; + } else if (m_receivingData) { + qDebug() << "TCP:: Received data sequence"; + m_projectData.append(data); + } else { + qDebug() << "TCP:: Received unknown data:" << data; + } } bool DesignStudioConnector::initTcpServer() @@ -78,8 +72,6 @@ bool DesignStudioConnector::initTcpServer() emit networkStatusUpdated("\nLocal IP: " + m_ipv4Addr + "\nWaiting for Design Studio to connect..."); m_broadcastTimer.start(); - m_receivingData = false; - emit projectReceived(m_projectData); m_projectData.clear(); }); diff --git a/src/dsConnector.h b/src/dsConnector.h index 5e577ccf4aa5b71d297f2730e3ef4b63363e7841..28d3f032e0fd7fab292801043bcc59be91e702c8 100644 --- a/src/dsConnector.h +++ b/src/dsConnector.h @@ -51,7 +51,7 @@ private: QUdpSocket m_udpSocket; QTimer m_broadcastTimer; QString m_ipv4Addr; - const quint32 m_udpPort = 39000; + const quint32 m_udpPort = 45000; // Other members QByteArray m_projectData;