Addition of time normalization. Will reset the timing to start at zero and work up from there.

This commit is contained in:
Collin Kidder
2015-06-23 22:14:48 -04:00
parent 37f30116e7
commit 7f17aa8495
5 changed files with 30 additions and 0 deletions
+14
View File
@@ -17,6 +17,7 @@ CANFrameModel::CANFrameModel(QObject *parent)
dbcHandler = NULL;
interpretFrames = false;
overwriteDups = false;
timeOffset = 0;
}
void CANFrameModel::setDBCHandler(DBCHandler *handler)
@@ -36,6 +37,18 @@ void CANFrameModel::setInterpetMode(bool mode)
}
}
void CANFrameModel::normalizeTiming()
{
if (frames.count() == 0) return;
this->beginResetModel();
timeOffset = frames[0].timestamp;
for (int i = 0; i < frames.count(); i++)
{
frames[i].timestamp -= timeOffset;
}
this->endResetModel();
}
void CANFrameModel::setOverwriteMode(bool mode)
{
overwriteDups = mode;
@@ -140,6 +153,7 @@ void CANFrameModel::addFrame(CANFrame &frame, bool autoRefresh = false)
{
mutex.lock();
if (autoRefresh) beginInsertRows(QModelIndex(), frames.count() + 1, frames.count() + 1);
frame.timestamp -= timeOffset;
frames.append(frame);
if (autoRefresh) endInsertRows();
mutex.unlock();