|
|
|
|
|
#include "GaZManageExport.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
GaZManageExport::GaZManageExport()
|
|
|
|
|
|
{
|
|
|
|
|
|
if (m_gazSocket == nullptr)
|
|
|
|
|
|
{
|
|
|
|
|
|
m_gazSocket = new QTcpSocket();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
GaZManageExport::~GaZManageExport()
|
|
|
|
|
|
{
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
bool GaZManageExport::InitGaz(QString ip, int port)
|
|
|
|
|
|
{
|
|
|
|
|
|
m_ip = ip;
|
|
|
|
|
|
m_port = port;
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԭ<EFBFBD><D4AD>
|
|
|
|
|
|
bool isSuccess = ExecuteCommand("#1W0\r");
|
|
|
|
|
|
if (!isSuccess)
|
|
|
|
|
|
{
|
|
|
|
|
|
return false;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD>þ<EFBFBD>Բ<EFBFBD>ߴ<EFBFBD>
|
|
|
|
|
|
isSuccess = ExecuteCommand("#1WAS12\r");
|
|
|
|
|
|
if (!isSuccess)
|
|
|
|
|
|
{
|
|
|
|
|
|
return false;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD>ýǶ<C3BD>
|
|
|
|
|
|
isSuccess = ExecuteCommand("#1WOP0\r");
|
|
|
|
|
|
if (!isSuccess)
|
|
|
|
|
|
{
|
|
|
|
|
|
return false;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
return true;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
bool GaZManageExport::MoveToPreparePos()
|
|
|
|
|
|
{
|
|
|
|
|
|
//<2F><><EFBFBD>ýǶ<C3BD>
|
|
|
|
|
|
bool isSuccess = ExecuteCommand("#1G12\r");
|
|
|
|
|
|
if (!isSuccess)
|
|
|
|
|
|
{
|
|
|
|
|
|
return false;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
return true;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
bool GaZManageExport::DOAlign()
|
|
|
|
|
|
{
|
|
|
|
|
|
//<2F><><EFBFBD>ýǶ<C3BD>
|
|
|
|
|
|
bool isSuccess = ExecuteCommand("#1G17\r");
|
|
|
|
|
|
if (!isSuccess)
|
|
|
|
|
|
{
|
|
|
|
|
|
return false;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
return true;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
bool GaZManageExport::ExecuteCommand(QString commandStr)
|
|
|
|
|
|
{
|
|
|
|
|
|
bool isFlag = false;
|
|
|
|
|
|
|
|
|
|
|
|
m_gazSocket->connectToHost(m_ip, m_port);
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԭ<EFBFBD><D4AD>
|
|
|
|
|
|
m_gazSocket->write(commandStr.toStdString().c_str());
|
|
|
|
|
|
m_gazSocket->waitForBytesWritten(); // ȷ<><C8B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD>
|
|
|
|
|
|
m_gazSocket->waitForReadyRead(3000); // <20>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ
|
|
|
|
|
|
QString recvStr = QString::fromUtf8(m_gazSocket->readAll());
|
|
|
|
|
|
int index = 0;
|
|
|
|
|
|
index = recvStr.indexOf("ACK");
|
|
|
|
|
|
if (index >= 0)
|
|
|
|
|
|
{
|
|
|
|
|
|
m_gazSocket->waitForReadyRead(30000); // <20>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ
|
|
|
|
|
|
recvStr = QString::fromUtf8(m_gazSocket->readAll());
|
|
|
|
|
|
index = recvStr.indexOf("INF");
|
|
|
|
|
|
if (index >= 0)
|
|
|
|
|
|
{
|
|
|
|
|
|
isFlag = true;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
m_gazSocket->disconnectFromHost();
|
|
|
|
|
|
return isFlag;
|
|
|
|
|
|
}
|