This commit is contained in:
2022-01-10 17:46:44 +08:00
parent 5f9208b9e1
commit a3d2319f56
49 changed files with 174 additions and 391 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -28,6 +28,12 @@ int main(int argc, char *argv[])
Scheduler m_sTimer;
CMainDataGrabber m_mdgGrabber;
CMainDataUploader m_mduUploader;
ErrInfo m_eiErrInfo;
m_eiErrInfo.fChassisTempErr = 0;
m_eiErrInfo.fTecTempErr = 0;
m_eiErrInfo.iDataTransferErr = 0;
m_eiErrInfo.iShutterErr = 0;
////
bool bRes;
@ -84,8 +90,10 @@ int main(int argc, char *argv[])
m_mdgGrabber.Init_Normal();
m_mduUploader.Initialize();
//m_mduUploader.UploadInfo();
m_mduUploader.SetErr(m_eiErrInfo);
m_mduUploader.UploadInfo();
m_mduUploader.UploadErr();
m_pqDataGrabberThreadHolder->start();
m_pqTimerThreadHolder->start();
m_pqUploaderThreadHolder->start();

View File

@ -179,6 +179,14 @@ namespace ZZ_MISCDEF
//<2F><><EFBFBD>в<EFBFBD><D0B2><EFBFBD>
namespace ZZ_RUNPARAMS
{
typedef struct tagErrorInfo
{
int iDataTransferErr = -1000;
float fTecTempErr = -1000;
int iShutterErr = -1000;
float fChassisTempErr = -1000;
}ErrInfo;
typedef struct tagFiberSpecContext
{
ZZ_U8 ucDeviceNumber;

View File

@ -7,6 +7,7 @@
m_qstrDeviceConfigFilePath = "E:/WorkSpace/TowerOptoSifAndSpectral/config/DeviceSettings.ini";
m_qstrJSONConfigFilePath = "E:/WorkSpace/TowerOptoSifAndSpectral/config/config.json";
#else
m_qstrDeviceConfigFilePath = "/home/data/Setting/DeviceSettings.ini";
m_qstrJSONConfigFilePath = ("/home/data/Setting/config.json");
#endif // DEBUG

View File

@ -2,6 +2,8 @@
ZZ_HttpTransfer::ZZ_HttpTransfer(QObject* parent /*= nullptr*/)
{
m_pNetworkManager = nullptr;
m_pNetworkManagerThread = nullptr;
//connect(this, &ZZ_HttpTransfer::SignalInit_Self, this, &ZZ_HttpTransfer::SlotInit_Self);
}
ZZ_HttpTransfer::~ZZ_HttpTransfer()
@ -10,14 +12,24 @@ ZZ_HttpTransfer::~ZZ_HttpTransfer()
{
delete m_pNetworkManager;
}
if (m_pNetworkManagerThread != nullptr)
{
delete m_pNetworkManagerThread;
}
}
// void ZZ_HttpTransfer::Init_Self()
// {
// emit SignalInit_Self();
// }
int ZZ_HttpTransfer::SendData()
{
if (m_pNetworkManager == nullptr)
if (m_pNetworkManagerThread == nullptr)
{
m_pNetworkManager = new QNetworkAccessManager();
connect(m_pNetworkManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(SlotReplyFinished(QNetworkReply*)));
m_pNetworkManagerThread = new QNetworkAccessManager();
connect(m_pNetworkManagerThread, SIGNAL(finished(QNetworkReply*)), this, SLOT(SlotReplyFinishedThread(QNetworkReply*)));
}
QNetworkRequest qnRequest;
@ -44,7 +56,7 @@ int ZZ_HttpTransfer::SendData()
qbSend.append(qstrSend.toLatin1());
qbSend.append((char*)m_vecCalcedData[i][j].fData, sizeof(float)*m_vecCalcedData[i][j].iPixels);
m_pNetworkManager->post(qnRequest, qbSend);
m_pNetworkManagerThread->post(qnRequest, qbSend);
iFlagIsReplied = 0;
int iCount = 0;
while (!iFlagIsReplied)
@ -120,7 +132,7 @@ int ZZ_HttpTransfer::SendInfo()
{
iCount++;
Delay_MSec(500);
if (iCount>20)
if (iCount>2)
{
iFlagIsReplied = 1;
qDebug() << "Reply Timeout:Upload Info ";
@ -135,16 +147,73 @@ int ZZ_HttpTransfer::SendInfo()
int ZZ_HttpTransfer::SendErr()
{
if (m_pNetworkManager == nullptr)
{
m_pNetworkManager = new QNetworkAccessManager();
connect(m_pNetworkManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(SlotReplyFinished(QNetworkReply*)));
}
QNetworkRequest qnRequest;
qnRequest.setHeader(QNetworkRequest::ContentTypeHeader, QVariant("application/json"));
qnRequest.setUrl(QUrl("http://172.16.0.234/fileup/Warning.php"));
QByteArray abTest;
QByteArray qbSend;
QString qstrSend;
qbSend.clear();
qstrSend.clear();
m_pNetworkManager->post(qnRequest, abTest);
if (m_struErrInfo.fChassisTempErr==-1000)
{
}
else
{
qstrSend += "Case_Temp:" + QString("%1").arg(m_struErrInfo.iDataTransferErr);
}
if (m_struErrInfo.fTecTempErr == -1000)
{
}
else
{
qstrSend += "##TEC_Temp:" + QString("%1").arg(m_struErrInfo.fTecTempErr);
}
if (m_struErrInfo.iDataTransferErr == -1000)
{
}
else
{
qstrSend += "##No_Data:" + QString("%1").arg(m_struErrInfo.iDataTransferErr);
}
if (m_struErrInfo.iShutterErr == -1000)
{
}
else
{
qstrSend += "##Shutter_Pos:" + QString("%1").arg(m_struErrInfo.iDataTransferErr);
}
qbSend = qstrSend.toLatin1();
m_pNetworkManager->post(qnRequest, qbSend);
iFlagIsReplied = 0;
int iCount = 0;
while (!iFlagIsReplied)
{
iCount++;
Delay_MSec(500);
if (iCount > 2)
{
iFlagIsReplied = 1;
qDebug() << "Reply Timeout:Upload Info ";
}
}
return 0;
}
void ZZ_HttpTransfer::SetErrInfo(ErrInfo struErrInfo)
{
m_struErrInfo = struErrInfo;
}
void ZZ_HttpTransfer::SetContext(EContext struEC, MEContext struMEC)
{
m_struEC = struEC;
@ -172,8 +241,8 @@ void ZZ_HttpTransfer::Delay_MSec(ZZ_U16 usMS)
int ZZ_HttpTransfer::SlotReplyFinished(QNetworkReply* qnReply)
{
//QString qstrURL = qnReply->url().toString();
//QByteArray qbData = qnReply->readAll();
QString qstrURL = qnReply->url().toString();
QByteArray qbData = qnReply->readAll();
if (qnReply->error()== QNetworkReply::NoError)
{
iFlagIsReplied = 1;
@ -185,3 +254,36 @@ int ZZ_HttpTransfer::SlotReplyFinished(QNetworkReply* qnReply)
//delete qnReply;
return 0;
}
int ZZ_HttpTransfer::SlotReplyFinishedThread(QNetworkReply* qnReply)
{
QString qstrURL = qnReply->url().toString();
QByteArray qbData = qnReply->readAll();
if (qnReply->error() == QNetworkReply::NoError)
{
iFlagIsReplied = 1;
}
qnReply->abort();
qnReply->close();
qnReply->deleteLater();
qnReply = NULL;
//delete qnReply;
return 0;
}
// int ZZ_HttpTransfer::SlotInit_Self()
// {
// if (m_pNetworkManager == nullptr)
// {
// m_pNetworkManager = new QNetworkAccessManager();
// connect(m_pNetworkManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(SlotReplyFinished(QNetworkReply*)));
// }
// else
// {
// delete m_pNetworkManager;
// m_pNetworkManager = new QNetworkAccessManager();
// connect(m_pNetworkManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(SlotReplyFinished(QNetworkReply*)));
// }
// return 0;
// }

View File

@ -19,10 +19,13 @@ public:
~ZZ_HttpTransfer();
public:
public:
//void Init_Self();
int SendData();
int SendInfo();
int SendErr();
void SetErrInfo(ErrInfo struErrInfo);
void SetContext(EContext struEC, MEContext struMEC);
void SetDeviceInfo(RunTimeGrabberParams struGrabberRTParams);
void SetCalData(vector<vector<CalDataFrame>> vecCalcedData);
@ -31,6 +34,9 @@ private:
private:
QNetworkAccessManager *m_pNetworkManager;
QNetworkAccessManager *m_pNetworkManagerThread;
ErrInfo m_struErrInfo;
EContext m_struEC;
MEContext m_struMEC;
RunTimeGrabberParams m_struGrabberRTParams;
@ -39,4 +45,8 @@ private:
int iFlagIsReplied;
public slots:
int SlotReplyFinished(QNetworkReply* qnReply);
int SlotReplyFinishedThread(QNetworkReply* qnReply);
//int SlotInit_Self();
signals:
//void SignalInit_Self();
};

View File

@ -4,6 +4,7 @@ CMainDataUploader::CMainDataUploader(QObject* parent /*= nullptr*/)
{
m_pRadConverter = new RadConverter;
m_pTransfer = new ZZ_HttpTransfer;
//connect(this, &CMainDataUploader::SignalInit_Self, m_pTransfer, &ZZ_HttpTransfer::SlotInit_Self);
}
CMainDataUploader::~CMainDataUploader()
@ -18,6 +19,12 @@ CMainDataUploader::~CMainDataUploader()
}
}
void CMainDataUploader::SetErr(ErrInfo struErrInfo)
{
m_pTransfer->SetErrInfo(struErrInfo);
//m_struErrInfo = struErrInfo;
}
void CMainDataUploader::SetData(vector<vector<DataFrame>> vecData)
{
QDateTime qdtTime = QDateTime::currentDateTime();
@ -77,6 +84,7 @@ int CMainDataUploader::UploadInfo()
int CMainDataUploader::UploadErr()
{
m_pTransfer->SendErr();
return 0;
}
@ -92,9 +100,16 @@ int CMainDataUploader::Initialize()
m_pRadConverter->LoadCalibrationFrames(m_struGrabberRTParams,m_vecCalData);
m_pTransfer->SetContext(m_struEC, m_struMEC);
m_pTransfer->SetDeviceInfo(m_struGrabberRTParams);
//m_pTransfer->Init_Self();
return 0;
}
// int CMainDataUploader::Init_Self()
// {
// emit SignalInit_Self();
// return 0;
// }
// int CMainDataUploader::SlotPushOneDataFrame(vector<vector<DataFrame>> vecData)
// {
// return 0;
@ -107,3 +122,13 @@ int CMainDataUploader::SlotPushOneDataFrame()
m_vecData.clear();
return 0;
}
int CMainDataUploader::SlotUpdateErrorInfo()
{
return 0;
}
// int CMainDataUploader::SlotInit_Self()
// {
//
// }

View File

@ -20,12 +20,14 @@ public:
public:
//set attributes
void SetErr(ErrInfo struErrInfo);
void SetData(vector<vector<DataFrame>> vecData);
void SetRTGP(RunTimeGrabberParams struGrabberRTParams);
void SetContext(EContext struEC, MEContext struMEC);
//load calibration file after set attributes
int Initialize();
//int Init_Self();
void Calibration();
@ -33,10 +35,11 @@ public:
int UploadErr();
int UploadData();
private:
public:
RadConverter *m_pRadConverter = NULL;
ZZ_HttpTransfer *m_pTransfer = NULL;
private:
//ErrInfo m_struErrInfo;
EContext m_struEC;
MEContext m_struMEC;
RunTimeGrabberParams m_struGrabberRTParams;
@ -48,4 +51,9 @@ private:
public slots:
//int SlotPushOneDataFrame(vector<vector<DataFrame>> vecData);
int SlotPushOneDataFrame();
int SlotUpdateErrorInfo();
signals:
//void SignalInit_Self();
};