CANFrame.len is now unsigned int
This commit is contained in:
+1
-1
@@ -11,7 +11,7 @@ public:
|
|||||||
int bus;
|
int bus;
|
||||||
bool extended;
|
bool extended;
|
||||||
bool isReceived; //did we receive this or send it?
|
bool isReceived; //did we receive this or send it?
|
||||||
int len;
|
uint32_t len;
|
||||||
unsigned char data[8];
|
unsigned char data[8];
|
||||||
uint64_t timestamp;
|
uint64_t timestamp;
|
||||||
};
|
};
|
||||||
|
|||||||
+1
-1
@@ -207,7 +207,7 @@ QVariant CANFrameModel::data(const QModelIndex &index, int role) const
|
|||||||
return QString::number(thisFrame.len);
|
return QString::number(thisFrame.len);
|
||||||
break;
|
break;
|
||||||
case 6: //data
|
case 6: //data
|
||||||
for (int i = 0; i < thisFrame.len; i++)
|
for (unsigned int i = 0; i < thisFrame.len; i++)
|
||||||
{
|
{
|
||||||
tempString.append(Utility::formatNumber(thisFrame.data[i]));
|
tempString.append(Utility::formatNumber(thisFrame.data[i]));
|
||||||
tempString.append(" ");
|
tempString.append(" ");
|
||||||
|
|||||||
@@ -112,7 +112,7 @@ void FileComparatorWindow::calculateDetails()
|
|||||||
CANFrame frame = interestedFrames.at(x);
|
CANFrame frame = interestedFrames.at(x);
|
||||||
if (interestedIDs.contains(frame.ID)) //if we saw this ID before then add to the QList in there
|
if (interestedIDs.contains(frame.ID)) //if we saw this ID before then add to the QList in there
|
||||||
{
|
{
|
||||||
for (int y = 0; y < frame.len; y++)
|
for (unsigned int y = 0; y < frame.len; y++)
|
||||||
{
|
{
|
||||||
interestedIDs[frame.ID].values[y][frame.data[y]]++;
|
interestedIDs[frame.ID].values[y][frame.data[y]]++;
|
||||||
tmp = frame.data[y];
|
tmp = frame.data[y];
|
||||||
@@ -137,7 +137,7 @@ void FileComparatorWindow::calculateDetails()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
//memset(newData->values, 0, 256 * 8);
|
//memset(newData->values, 0, 256 * 8);
|
||||||
for (int y = 0; y < frame.len; y++)
|
for (unsigned int y = 0; y < frame.len; y++)
|
||||||
{
|
{
|
||||||
newData->values[y][frame.data[y]] = 1;
|
newData->values[y][frame.data[y]] = 1;
|
||||||
tmp = frame.data[y];
|
tmp = frame.data[y];
|
||||||
@@ -177,7 +177,7 @@ void FileComparatorWindow::calculateDetails()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
//memset(newData->values, 0, 256 * 8);
|
//memset(newData->values, 0, 256 * 8);
|
||||||
for (int y = 0; y < frame.len; y++)
|
for (unsigned int y = 0; y < frame.len; y++)
|
||||||
{
|
{
|
||||||
newData->values[y][frame.data[y]] = 1;
|
newData->values[y][frame.data[y]] = 1;
|
||||||
tmp = frame.data[y];
|
tmp = frame.data[y];
|
||||||
|
|||||||
+24
-27
@@ -322,7 +322,7 @@ bool FrameFileIO::loadCRTDFile(QString filename, QVector<CANFrame>* frames)
|
|||||||
else thisFrame.isReceived = true;
|
else thisFrame.isReceived = true;
|
||||||
thisFrame.bus = 0;
|
thisFrame.bus = 0;
|
||||||
thisFrame.len = tokens.length() - 3;
|
thisFrame.len = tokens.length() - 3;
|
||||||
for (int d = 0; d < thisFrame.len; d++)
|
for (unsigned int d = 0; d < thisFrame.len; d++)
|
||||||
{
|
{
|
||||||
if (tokens[d + 3] != "")
|
if (tokens[d + 3] != "")
|
||||||
{
|
{
|
||||||
@@ -379,7 +379,7 @@ bool FrameFileIO::saveCRTDFile(QString filename, const QVector<CANFrame>* frames
|
|||||||
outFile->write(QString::number(frames->at(c).ID, 16).toUpper().rightJustified(8, '0').toUtf8());
|
outFile->write(QString::number(frames->at(c).ID, 16).toUpper().rightJustified(8, '0').toUtf8());
|
||||||
outFile->putChar(' ');
|
outFile->putChar(' ');
|
||||||
|
|
||||||
for (int temp = 0; temp < frames->at(c).len; temp++)
|
for (unsigned int temp = 0; temp < frames->at(c).len; temp++)
|
||||||
{
|
{
|
||||||
outFile->write(QString::number(frames->at(c).data[temp], 16).toUpper().rightJustified(2, '0').toUtf8());
|
outFile->write(QString::number(frames->at(c).data[temp], 16).toUpper().rightJustified(2, '0').toUtf8());
|
||||||
outFile->putChar(' ');
|
outFile->putChar(' ');
|
||||||
@@ -446,9 +446,9 @@ bool FrameFileIO::loadNativeCSVFile(QString filename, QVector<CANFrame>* frames)
|
|||||||
{
|
{
|
||||||
thisFrame.isReceived = true;
|
thisFrame.isReceived = true;
|
||||||
thisFrame.bus = tokens[3].toInt();
|
thisFrame.bus = tokens[3].toInt();
|
||||||
thisFrame.len = tokens[4].toInt();
|
thisFrame.len = tokens[4].toUInt();
|
||||||
for (int c = 0; c < 8; c++) thisFrame.data[c] = 0;
|
for (int c = 0; c < 8; c++) thisFrame.data[c] = 0;
|
||||||
for (int d = 0; d < thisFrame.len; d++)
|
for (unsigned int d = 0; d < thisFrame.len; d++)
|
||||||
thisFrame.data[d] = tokens[5 + d].toInt(NULL, 16);
|
thisFrame.data[d] = tokens[5 + d].toInt(NULL, 16);
|
||||||
}
|
}
|
||||||
else if (fileVersion == 2)
|
else if (fileVersion == 2)
|
||||||
@@ -456,10 +456,10 @@ bool FrameFileIO::loadNativeCSVFile(QString filename, QVector<CANFrame>* frames)
|
|||||||
if (tokens[3].at(0) == 'R') thisFrame.isReceived = true;
|
if (tokens[3].at(0) == 'R') thisFrame.isReceived = true;
|
||||||
else thisFrame.isReceived = false;
|
else thisFrame.isReceived = false;
|
||||||
thisFrame.bus = tokens[4].toInt();
|
thisFrame.bus = tokens[4].toInt();
|
||||||
thisFrame.len = tokens[5].toInt();
|
thisFrame.len = tokens[5].toUInt();
|
||||||
if (thisFrame.len + 6 > tokens.length()) thisFrame.len = tokens.length() - 6;
|
if (thisFrame.len + 6 > (unsigned int) tokens.length()) thisFrame.len = tokens.length() - 6;
|
||||||
for (int c = 0; c < 8; c++) thisFrame.data[c] = 0;
|
for (int c = 0; c < 8; c++) thisFrame.data[c] = 0;
|
||||||
for (int d = 0; d < thisFrame.len; d++)
|
for (unsigned int d = 0; d < thisFrame.len; d++)
|
||||||
thisFrame.data[d] = tokens[6 + d].toInt(NULL, 16);
|
thisFrame.data[d] = tokens[6 + d].toInt(NULL, 16);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -570,7 +570,7 @@ bool FrameFileIO::loadGenericCSVFile(QString filename, QVector<CANFrame>* frames
|
|||||||
QList<QByteArray> dataTok = tokens[1].split(' ');
|
QList<QByteArray> dataTok = tokens[1].split(' ');
|
||||||
thisFrame.len = dataTok.length();
|
thisFrame.len = dataTok.length();
|
||||||
if (thisFrame.len > 8) thisFrame.len = 8;
|
if (thisFrame.len > 8) thisFrame.len = 8;
|
||||||
for (int d = 0; d < thisFrame.len; d++) thisFrame.data[d] = dataTok[d].toInt(NULL, 16);
|
for (unsigned int d = 0; d < thisFrame.len; d++) thisFrame.data[d] = dataTok[d].toInt(NULL, 16);
|
||||||
|
|
||||||
frames->append(thisFrame);
|
frames->append(thisFrame);
|
||||||
}
|
}
|
||||||
@@ -608,7 +608,7 @@ bool FrameFileIO::saveGenericCSVFile(QString filename, const QVector<CANFrame>*
|
|||||||
outFile->write(QString::number(frames->at(c).ID, 16).toUpper().rightJustified(8, '0').toUtf8());
|
outFile->write(QString::number(frames->at(c).ID, 16).toUpper().rightJustified(8, '0').toUtf8());
|
||||||
outFile->putChar(44);
|
outFile->putChar(44);
|
||||||
|
|
||||||
for (int temp = 0; temp < frames->at(c).len; temp++)
|
for (unsigned int temp = 0; temp < frames->at(c).len; temp++)
|
||||||
{
|
{
|
||||||
outFile->write(QString::number(frames->at(c).data[temp], 16).toUpper().rightJustified(2, '0').toUtf8());
|
outFile->write(QString::number(frames->at(c).data[temp], 16).toUpper().rightJustified(2, '0').toUtf8());
|
||||||
outFile->putChar(' ');
|
outFile->putChar(' ');
|
||||||
@@ -696,10 +696,9 @@ bool FrameFileIO::loadLogFile(QString filename, QVector<CANFrame>* frames)
|
|||||||
if (tokens[4] == "s") thisFrame.extended = false;
|
if (tokens[4] == "s") thisFrame.extended = false;
|
||||||
else thisFrame.extended = true;
|
else thisFrame.extended = true;
|
||||||
thisFrame.bus = tokens[2].toInt() - 1;
|
thisFrame.bus = tokens[2].toInt() - 1;
|
||||||
thisFrame.len = tokens[5].toInt();
|
thisFrame.len = tokens[5].toUInt();
|
||||||
if (thisFrame.len > 8) thisFrame.len = 8;
|
if (thisFrame.len > 8) thisFrame.len = 8;
|
||||||
if (thisFrame.len < 0) thisFrame.len = 0;
|
for (unsigned int d = 0; d < thisFrame.len; d++) thisFrame.data[d] = tokens[d + 6].toInt(NULL, 16);
|
||||||
for (int d = 0; d < thisFrame.len; d++) thisFrame.data[d] = tokens[d + 6].toInt(NULL, 16);
|
|
||||||
frames->append(thisFrame);
|
frames->append(thisFrame);
|
||||||
}
|
}
|
||||||
else foundErrors = true;
|
else foundErrors = true;
|
||||||
@@ -759,7 +758,7 @@ bool FrameFileIO::saveLogFile(QString filename, const QVector<CANFrame>* frames)
|
|||||||
else outFile->write(" s ");
|
else outFile->write(" s ");
|
||||||
outFile->write(QString::number(frames->at(c).len).toUtf8() + " ");
|
outFile->write(QString::number(frames->at(c).len).toUtf8() + " ");
|
||||||
|
|
||||||
for (int temp = 0; temp < frames->at(c).len; temp++)
|
for (unsigned int temp = 0; temp < frames->at(c).len; temp++)
|
||||||
{
|
{
|
||||||
outFile->write(QString::number(frames->at(c).data[temp], 16).toUpper().rightJustified(2, '0').toUtf8());
|
outFile->write(QString::number(frames->at(c).data[temp], 16).toUpper().rightJustified(2, '0').toUtf8());
|
||||||
outFile->putChar(' ');
|
outFile->putChar(' ');
|
||||||
@@ -836,7 +835,7 @@ bool FrameFileIO::loadIXXATFile(QString filename, QVector<CANFrame>* frames)
|
|||||||
|
|
||||||
QStringList dataToks = unQuote(tokens[4]).simplified().split(' ');
|
QStringList dataToks = unQuote(tokens[4]).simplified().split(' ');
|
||||||
thisFrame.len = dataToks.length();
|
thisFrame.len = dataToks.length();
|
||||||
for (int d = 0; d < thisFrame.len; d++) thisFrame.data[d] = dataToks[d].toInt(NULL, 16);
|
for (unsigned int d = 0; d < thisFrame.len; d++) thisFrame.data[d] = dataToks[d].toInt(NULL, 16);
|
||||||
frames->append(thisFrame);
|
frames->append(thisFrame);
|
||||||
}
|
}
|
||||||
else foundErrors = true;
|
else foundErrors = true;
|
||||||
@@ -889,7 +888,7 @@ bool FrameFileIO::saveIXXATFile(QString filename, const QVector<CANFrame>* frame
|
|||||||
else outFile->write(",\"Std\"");
|
else outFile->write(",\"Std\"");
|
||||||
outFile->write(",\"\",\"");
|
outFile->write(",\"\",\"");
|
||||||
|
|
||||||
for (int temp = 0; temp < frames->at(c).len; temp++)
|
for (unsigned int temp = 0; temp < frames->at(c).len; temp++)
|
||||||
{
|
{
|
||||||
outFile->write(QString::number(frames->at(c).data[temp], 16).toUpper().rightJustified(2, '0').toUtf8());
|
outFile->write(QString::number(frames->at(c).data[temp], 16).toUpper().rightJustified(2, '0').toUtf8());
|
||||||
outFile->putChar(' ');
|
outFile->putChar(' ');
|
||||||
@@ -952,7 +951,7 @@ bool FrameFileIO::loadCANDOFile(QString filename, QVector<CANFrame>* frames)
|
|||||||
|
|
||||||
if (thisFrame.len <= 8 && thisFrame.ID <= 0x7FF)
|
if (thisFrame.len <= 8 && thisFrame.ID <= 0x7FF)
|
||||||
{
|
{
|
||||||
for (int d = 0; d < thisFrame.len; d++) thisFrame.data[d] = (unsigned char)data[4 + d];
|
for (unsigned int d = 0; d < thisFrame.len; d++) thisFrame.data[d] = (unsigned char)data[4 + d];
|
||||||
frames->append(thisFrame);
|
frames->append(thisFrame);
|
||||||
}
|
}
|
||||||
else foundErrors = true;
|
else foundErrors = true;
|
||||||
@@ -1008,7 +1007,7 @@ bool FrameFileIO::saveCANDOFile(QString filename, const QVector<CANFrame>* frame
|
|||||||
data[1] = (char)(ms & 0xFF);
|
data[1] = (char)(ms & 0xFF);
|
||||||
data[2] = (char)(id & 0xFF);
|
data[2] = (char)(id & 0xFF);
|
||||||
data[3] = (char)((id >> 8) + (thisFrame.len << 4));
|
data[3] = (char)((id >> 8) + (thisFrame.len << 4));
|
||||||
for (int d = 0; d < thisFrame.len; d++) data[4 + d] = (char)thisFrame.data[d];
|
for (unsigned int d = 0; d < thisFrame.len; d++) data[4 + d] = (char)thisFrame.data[d];
|
||||||
outFile->write(data);
|
outFile->write(data);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1074,11 +1073,10 @@ bool FrameFileIO::loadMicrochipFile(QString filename, QVector<CANFrame>* frames)
|
|||||||
if (thisFrame.ID <= 0x7FF) thisFrame.extended = false;
|
if (thisFrame.ID <= 0x7FF) thisFrame.extended = false;
|
||||||
else thisFrame.extended = true;
|
else thisFrame.extended = true;
|
||||||
thisFrame.bus = 0;
|
thisFrame.bus = 0;
|
||||||
thisFrame.len = tokens[3].toInt();
|
thisFrame.len = tokens[3].toUInt();
|
||||||
if (thisFrame.len > 8) thisFrame.len = 8;
|
if (thisFrame.len > 8) thisFrame.len = 8;
|
||||||
if (thisFrame.len < 0) thisFrame.len = 0;
|
if (thisFrame.len + 4 > (unsigned int) tokens.length()) thisFrame.len = tokens.length() - 4;
|
||||||
if (thisFrame.len + 4 > tokens.length()) thisFrame.len = tokens.length() - 4;
|
for (unsigned int d = 0; d < thisFrame.len; d++) thisFrame.data[d] = (unsigned char)Utility::ParseStringToNum(tokens[4 + d]);
|
||||||
for (int d = 0; d < thisFrame.len; d++) thisFrame.data[d] = (unsigned char)Utility::ParseStringToNum(tokens[4 + d]);
|
|
||||||
frames->append(thisFrame);
|
frames->append(thisFrame);
|
||||||
}
|
}
|
||||||
else foundErrors = true;
|
else foundErrors = true;
|
||||||
@@ -1140,7 +1138,7 @@ bool FrameFileIO::saveMicrochipFile(QString filename, const QVector<CANFrame>* f
|
|||||||
outFile->write("0x" + QString::number(frames->at(c).ID, 16).toUpper().rightJustified(8, '0').toUtf8() + ";");
|
outFile->write("0x" + QString::number(frames->at(c).ID, 16).toUpper().rightJustified(8, '0').toUtf8() + ";");
|
||||||
outFile->write(QString::number(frames->at(c).len).toUtf8() + ";");
|
outFile->write(QString::number(frames->at(c).len).toUtf8() + ";");
|
||||||
|
|
||||||
for (int temp = 0; temp < frames->at(c).len; temp++)
|
for (unsigned int temp = 0; temp < frames->at(c).len; temp++)
|
||||||
{
|
{
|
||||||
outFile->write("0x" + QString::number(frames->at(c).data[temp], 16).toUpper().rightJustified(2, '0').toUtf8());
|
outFile->write("0x" + QString::number(frames->at(c).data[temp], 16).toUpper().rightJustified(2, '0').toUtf8());
|
||||||
outFile->putChar(';');
|
outFile->putChar(';');
|
||||||
@@ -1233,12 +1231,11 @@ bool FrameFileIO::loadTraceFile(QString filename, QVector<CANFrame>* frames)
|
|||||||
if (thisFrame.ID <= 0x7FF) thisFrame.extended = false;
|
if (thisFrame.ID <= 0x7FF) thisFrame.extended = false;
|
||||||
else thisFrame.extended = true;
|
else thisFrame.extended = true;
|
||||||
thisFrame.bus = 0;
|
thisFrame.bus = 0;
|
||||||
thisFrame.len = tokens[3].toInt();
|
thisFrame.len = tokens[3].toUInt();
|
||||||
if (thisFrame.len < 0) thisFrame.len = 0;
|
|
||||||
if (thisFrame.len > 8) thisFrame.len = 8;
|
if (thisFrame.len > 8) thisFrame.len = 8;
|
||||||
QList<QByteArray> dataToks = tokens[4].split(' ');
|
QList<QByteArray> dataToks = tokens[4].split(' ');
|
||||||
if (thisFrame.len > dataToks.length()) thisFrame.len = dataToks.length();
|
if (thisFrame.len > (unsigned int) dataToks.length()) thisFrame.len = (unsigned int) dataToks.length();
|
||||||
for (int d = 0; d < thisFrame.len; d++) thisFrame.data[d] = (unsigned char)dataToks[d].toInt(NULL, 16);
|
for (unsigned int d = 0; d < thisFrame.len; d++) thisFrame.data[d] = (unsigned char)dataToks[d].toInt(NULL, 16);
|
||||||
frames->append(thisFrame);
|
frames->append(thisFrame);
|
||||||
}
|
}
|
||||||
else foundErrors = true;
|
else foundErrors = true;
|
||||||
@@ -1325,7 +1322,7 @@ bool FrameFileIO::saveTraceFile(QString filename, const QVector<CANFrame> * fram
|
|||||||
|
|
||||||
outFile->write(QString::number(frames->at(c).len).toUtf8() + "\t");
|
outFile->write(QString::number(frames->at(c).len).toUtf8() + "\t");
|
||||||
|
|
||||||
for (int temp = 0; temp < frames->at(c).len; temp++)
|
for (unsigned int temp = 0; temp < frames->at(c).len; temp++)
|
||||||
{
|
{
|
||||||
outFile->write(QString::number(frames->at(c).data[temp], 16).toUpper().rightJustified(2, '0').toUtf8());
|
outFile->write(QString::number(frames->at(c).data[temp], 16).toUpper().rightJustified(2, '0').toUtf8());
|
||||||
outFile->putChar(' ');
|
outFile->putChar(' ');
|
||||||
|
|||||||
+3
-4
@@ -93,13 +93,12 @@ void ScriptContainer::sendFrame(QJSValue bus, QJSValue id, QJSValue length, QJSV
|
|||||||
CANFrame frame;
|
CANFrame frame;
|
||||||
frame.extended = false;
|
frame.extended = false;
|
||||||
frame.ID = id.toInt();
|
frame.ID = id.toInt();
|
||||||
frame.len = length.toInt();
|
frame.len = length.toUInt();
|
||||||
if (frame.len < 0) frame.len = 0;
|
|
||||||
if (frame.len > 8) frame.len = 8;
|
if (frame.len > 8) frame.len = 8;
|
||||||
|
|
||||||
if (!data.isArray()) qDebug() << "data isn't an array";
|
if (!data.isArray()) qDebug() << "data isn't an array";
|
||||||
|
|
||||||
for (int i = 0; i < frame.len; i++)
|
for (unsigned int i = 0; i < frame.len; i++)
|
||||||
{
|
{
|
||||||
frame.data[i] = (uint8_t)data.property(i).toInt();
|
frame.data[i] = (uint8_t)data.property(i).toInt();
|
||||||
}
|
}
|
||||||
@@ -125,7 +124,7 @@ void ScriptContainer::gotFrame(const CANFrame &frame)
|
|||||||
QJSValueList args;
|
QJSValueList args;
|
||||||
args << frame.bus << frame.ID << frame.len;
|
args << frame.bus << frame.ID << frame.len;
|
||||||
QJSValue dataBytes = scriptEngine.newArray(frame.len);
|
QJSValue dataBytes = scriptEngine.newArray(frame.len);
|
||||||
for (int j = 0; j < frame.len; j++) dataBytes.setProperty(j, QJSValue(frame.data[j]));
|
for (unsigned int j = 0; j < frame.len; j++) dataBytes.setProperty(j, QJSValue(frame.data[j]));
|
||||||
args.append(dataBytes);
|
args.append(dataBytes);
|
||||||
gotFrameFunction.call(args);
|
gotFrameFunction.call(args);
|
||||||
return; //as soon as one filter matches we jump out
|
return; //as soon as one filter matches we jump out
|
||||||
|
|||||||
Reference in New Issue
Block a user