mirror of
http://172.16.0.230/r/SIF/TowerOptoSifAndSpectral.git
synced 2025-12-18 04:23:33 +08:00
v2.1.3
This commit is contained in:
@ -4,8 +4,10 @@ DataFileProcessor::DataFileProcessor(QObject* parent /*= nullptr*/)
|
||||
{
|
||||
#ifdef _DEBUG
|
||||
m_qstrFilePath = "E:/WorkSpace/TowerOptoSifAndSpectral/Data";
|
||||
m_qstrDarkFilePath = "E:/WorkSpace/TowerOptoSifAndSpectral/Dark";
|
||||
#else
|
||||
m_qstrFilePath = "/home/data/Data";
|
||||
m_qstrDarkFilePath="/home/data/Dark";
|
||||
#endif // DEBUG
|
||||
|
||||
}
|
||||
@ -33,21 +35,40 @@ void DataFileProcessor::SetData(std::vector<std::vector<DataFrame>> vecData)
|
||||
{
|
||||
m_vecData.clear();
|
||||
m_vecData = vecData;
|
||||
}
|
||||
|
||||
}
|
||||
void DataFileProcessor::SetDarkData(std::vector<std::vector<DataFrame>> vecData) {
|
||||
m_vecDarkData.clear();
|
||||
m_vecDarkData = vecData;
|
||||
}
|
||||
bool DataFileProcessor::WriteDataFile()
|
||||
{
|
||||
//qDebug() << "start Thread Data Server GenerateFilePath";
|
||||
GenerateFilePath();
|
||||
|
||||
//qDebug() << "start Thread Data Server WriteEnvironmentInfo";
|
||||
WriteEnvironmentInfo();
|
||||
WriteEnvironmentInfo(m_qstrFullFileName);
|
||||
|
||||
//qDebug() << "start Thread Data Server WriteDeviceInfo";
|
||||
WriteDeviceInfo();
|
||||
WriteDeviceInfo(m_qstrFullFileName);
|
||||
|
||||
//qDebug() << "start Thread Data Server WriteData";
|
||||
WriteData();
|
||||
WriteData(m_qstrFullFileName);
|
||||
return 1;
|
||||
}
|
||||
bool DataFileProcessor::WriteDarkDataFile()
|
||||
{
|
||||
//qDebug() << "start Thread Data Server GenerateFilePath";
|
||||
// GenerateFilePath();
|
||||
|
||||
//qDebug() << "start Thread Data Server WriteEnvironmentInfo";
|
||||
WriteEnvironmentInfo(m_qstrDarkFileName);
|
||||
|
||||
//qDebug() << "start Thread Data Server WriteDeviceInfo";
|
||||
WriteDeviceInfo(m_qstrDarkFileName);
|
||||
|
||||
//qDebug() << "start Thread Data Server WriteData";
|
||||
WriteDarkData(m_qstrDarkFileName);
|
||||
return 1;
|
||||
}
|
||||
|
||||
@ -60,13 +81,15 @@ void DataFileProcessor::GenerateFilePath()
|
||||
m_struEC.qstrUTCDateTime = m_qdtTime.toUTC().toString("yyyy_MM_dd hh:mm:ss");
|
||||
|
||||
m_qstrFullFileName = m_qstrFilePath + qstrAddYMD;
|
||||
m_qstrDarkFileName = m_qstrDarkFilePath + qstrAddYMD;
|
||||
QString qstrTemp= m_qstrFullFileName;
|
||||
QString qstrTempDark = m_qstrDarkFileName;
|
||||
if (m_struEC.qstrLocation=="")
|
||||
{
|
||||
m_struEC.qstrLocation = "Unknown";
|
||||
}
|
||||
m_qstrFullFileName= m_qstrFullFileName+"/"+m_struEC.qstrLocation + qstrAddHMS+".csv";
|
||||
|
||||
m_qstrFullFileName = m_qstrFullFileName+"/"+m_struEC.qstrLocation + qstrAddHMS+".csv";
|
||||
m_qstrDarkFileName =m_qstrDarkFileName+"/"+m_struEC.qstrLocation+"_dark" + qstrAddHMS+".csv";
|
||||
QDir qdirPath(qstrTemp);
|
||||
if (!qdirPath.exists())
|
||||
{
|
||||
@ -76,12 +99,22 @@ void DataFileProcessor::GenerateFilePath()
|
||||
qDebug() << "DataFileProcessor mkdir Failed.";
|
||||
}
|
||||
}
|
||||
QDir qdirPathDark(qstrTempDark);
|
||||
if (!qdirPathDark.exists()) {
|
||||
bool bRes = qdirPathDark.mkpath(qstrTempDark);
|
||||
if (!bRes) {
|
||||
qDebug()<< "DataDarkFileProcessor mkdir Failed.";
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
bool DataFileProcessor::WriteEnvironmentInfo()
|
||||
bool DataFileProcessor::WriteEnvironmentInfo(QString path)
|
||||
{
|
||||
if (path=="")
|
||||
{path=m_qstrFullFileName;}
|
||||
bool bRes = true;
|
||||
QFile qfData(m_qstrFullFileName);
|
||||
QFile qfData(path);
|
||||
bRes = qfData.open(QFile::WriteOnly|QFile::Text|QFile::Truncate);
|
||||
if (!bRes)
|
||||
{
|
||||
@ -145,9 +178,11 @@ bool DataFileProcessor::WriteEnvironmentInfo()
|
||||
return bRes;
|
||||
}
|
||||
|
||||
void DataFileProcessor::WriteDeviceInfo()
|
||||
void DataFileProcessor::WriteDeviceInfo(QString path)
|
||||
{
|
||||
QFile qfData(m_qstrFullFileName);
|
||||
if (path=="")
|
||||
{path=m_qstrFullFileName;}
|
||||
QFile qfData(path);
|
||||
bool bRes = qfData.open(QFile::WriteOnly | QFile::Text | QIODevice::Append);
|
||||
if (!bRes)
|
||||
{
|
||||
@ -215,9 +250,11 @@ void DataFileProcessor::WriteDeviceInfo()
|
||||
qfData.close();
|
||||
}
|
||||
|
||||
bool DataFileProcessor::WriteData()
|
||||
bool DataFileProcessor::WriteData(QString path)
|
||||
{
|
||||
QFile qfData(m_qstrFullFileName);
|
||||
if (path=="")
|
||||
{path=m_qstrFullFileName;}
|
||||
QFile qfData(path);
|
||||
bool bRes = qfData.open(QFile::WriteOnly | QFile::Text | QIODevice::Append);
|
||||
if (!bRes)
|
||||
{
|
||||
@ -260,6 +297,59 @@ bool DataFileProcessor::WriteData()
|
||||
}
|
||||
|
||||
}
|
||||
qfData.close();
|
||||
bool res = true;
|
||||
return res;
|
||||
}
|
||||
|
||||
bool DataFileProcessor::WriteDarkData(QString path)
|
||||
{
|
||||
if (path=="")
|
||||
{path=m_qstrDarkFileName;}
|
||||
QFile qfData(path);
|
||||
bool bRes = qfData.open(QFile::WriteOnly | QFile::Text | QIODevice::Append);
|
||||
if (!bRes)
|
||||
{
|
||||
qDebug() << "WriteData open Failed.";
|
||||
return 0;
|
||||
}
|
||||
QString qstrTemp;
|
||||
qfData.write("Data Section");
|
||||
qfData.write("\n");
|
||||
|
||||
using namespace ZZ_MISCDEF::IRIS;
|
||||
for (int i=0;i<m_struDeviceContext.ucDeviceNumber;i++)
|
||||
{
|
||||
for (int j=0;j<m_vecDarkData[i].size();j++)
|
||||
{
|
||||
qstrTemp = QString::fromStdString(GetDeviceModelName(m_struDeviceContext.ucDeviceModel[i]));
|
||||
qfData.write(qstrTemp.toLatin1());
|
||||
qstrTemp = QString("_P%1").arg(j + 1);
|
||||
qfData.write(qstrTemp.toLatin1());
|
||||
qfData.write(",");
|
||||
if ((m_vecDarkData[i][j].fTemperature < 5) /*&& (m_vecDarkData[i][j].fTemperature> -5)*/)
|
||||
{
|
||||
qfData.write("valid");
|
||||
}
|
||||
else
|
||||
{
|
||||
qfData.write("invalid");
|
||||
}
|
||||
|
||||
qfData.write(",");
|
||||
qstrTemp = QString::number(m_vecDarkData[i][j].usExposureTimeInMS);
|
||||
qfData.write(qstrTemp.toLatin1());
|
||||
for (int k=0;k< m_struDeviceContext.usPixels[i];k++)
|
||||
{
|
||||
qfData.write(",");
|
||||
qstrTemp = QString::number(m_vecDarkData[i][j].lData[k]);
|
||||
qfData.write(qstrTemp.toLatin1());
|
||||
}
|
||||
qfData.write("\n");
|
||||
}
|
||||
|
||||
}
|
||||
qfData.close();
|
||||
bool res = true;
|
||||
return res;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user