refactor:调整量测历史数据和实时数据的合并逻辑
This commit is contained in:
parent
e81a701414
commit
a3d98eaa23
|
|
@ -21,7 +21,7 @@ MeasurementDataManager* MeasurementDataManager::instance()
|
||||||
// static MeasurementDataManager instance;
|
// static MeasurementDataManager instance;
|
||||||
// return &instance;
|
// return &instance;
|
||||||
|
|
||||||
//不采用静态局部变量的方式实现,因为QTimer析构时需要依赖事件循环,静态局部变量的释放实在main函数之后,此时事件循环已退出(app.exec())
|
//不采用静态局部变量的方式实现,因为QTimer(WebSocketClient中)析构时需要依赖事件循环,静态局部变量的释放实在main函数之后,此时事件循环已退出(app.exec())
|
||||||
//所以增加destroyInstance(),在main函数退出之前显示调用,即可规避此问题
|
//所以增加destroyInstance(),在main函数退出之前显示调用,即可规避此问题
|
||||||
if(!m_instance)
|
if(!m_instance)
|
||||||
m_instance = new MeasurementDataManager();
|
m_instance = new MeasurementDataManager();
|
||||||
|
|
@ -294,6 +294,8 @@ void MeasurementDataManager::processHistoricalResponse(const QString& dataID, co
|
||||||
{
|
{
|
||||||
QJsonArray valueArray = values.toArray();
|
QJsonArray valueArray = values.toArray();
|
||||||
int size = valueArray.size();
|
int size = valueArray.size();
|
||||||
|
QVector<MeasurementDataPoint> points;
|
||||||
|
points.reserve(size);
|
||||||
for(int i = 0; i < size; ++i)
|
for(int i = 0; i < size; ++i)
|
||||||
{
|
{
|
||||||
if(!valueArray.at(i).isObject())
|
if(!valueArray.at(i).isObject())
|
||||||
|
|
@ -302,6 +304,7 @@ void MeasurementDataManager::processHistoricalResponse(const QString& dataID, co
|
||||||
QJsonObject valueObj = valueArray.at(i).toObject();
|
QJsonObject valueObj = valueArray.at(i).toObject();
|
||||||
qint64 timeStamp = valueObj.value("time").toString().toLongLong();
|
qint64 timeStamp = valueObj.value("time").toString().toLongLong();
|
||||||
double value = dataObj.value("value").toDouble();
|
double value = dataObj.value("value").toDouble();
|
||||||
|
points.append(MeasurementDataPoint(timeStamp, value));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue