Commit Graph
1185 Commits
Author SHA1 Message Date
Andy Huska 3c07785040 Buffer for partially received and/or leftover frame fragments
now working with multiple active busses.

Removed commented out test code and put a fix in for for
the filters list not having its capacity properly reserved
in recalcOverwrite so multiple entries of the same message
show up in the filtered view
2022-10-03 17:02:13 -05:00
Andy Huska e52a74ac7a Found a bug where complete frames being removed from the buffer were being shorted by 1 character
Committing now with debug comments for future reference
2022-10-03 16:36:30 -05:00
Andy Huska 08953a4004 Improved socketcand input buffer handling to reduce lost data.
No longer tossing partial frames, saving the data to concat with future data.
On startup there can be some data loss, but after it gets rolling there is none.
Added rough provision to ensure the buffer doesn't get filled with bad data, but
the decodeFrames recursive calls do a pretty good job of getting rid of it so I
haven't seen the buffer grow after millions of frames coming over a UDP-based VPN.
2022-10-03 11:26:28 -05:00
Andy Huska 8232d90a73 Merge branch 'add_allowfilterstostayuponclear' 2022-09-28 19:14:02 -05:00
Andy Huska 23d995060b Merge pull request #4 from collin80/master
getting the latest after this branch was pulled in
2022-09-27 05:55:34 -07:00
Collin Kidder ea0dbd90a8 Merge pull request #508 from llange/qt6.3-qcustomplot
make QCustomPlot compatible with Qt6.2+ (qt6)
2022-09-26 21:26:56 -05:00
Collin Kidder 61088d0184 Merge pull request #507 from llange/qt6.3-qatomicinteger
replace QAtomicInt load()/store() with loadRelaxed()/storeRelaxed()
2022-09-26 21:25:10 -05:00
Collin Kidder 9da32e97f8 Merge pull request #506 from llange/qt6.3-itemdatarole
replace BackgroundColorRole/TextColorRole with BackgroundRole/ForegroundRole (qt6)
2022-09-26 21:24:13 -05:00
Collin Kidder 52a2d719c7 Merge pull request #505 from llange/qt6.3-qmetatype
remove qRegisterMetaTypeStreamOperators (qt6)
2022-09-26 21:23:49 -05:00
Collin Kidder 194bd545e6 Merge pull request #504 from llange/qt6.3-qrandomgenerator
replace qrand/qsrand with QRandomGenerator (qt6)
2022-09-26 21:23:10 -05:00
Collin Kidder f653ef859a Merge pull request #503 from llange/qt6.3-qelapsedtimer
replace QTime with QElapsedTimer when possible (qt6)
2022-09-26 21:22:22 -05:00
Collin Kidder 51f02a0332 Merge pull request #502 from qurrent-llc/add_allowfilterstostayuponclear
Add option to main window to allow filters to persist when clearing frames
2022-09-26 21:21:45 -05:00
Ludovic LANGE 97844ad1e5 make QCustomPlot compatible with Qt6.2+ (qt6)
Cf the discussion here: https://www.qcustomplot.com/index.php/support/forum/2380
2022-09-24 22:23:08 +02:00
Ludovic LANGE 5ac5a7d45f replace QAtomicInt load()/store() with loadRelaxed()/storeRelaxed()
Since Qt5, some methods of QAtomicInteger [are deprecated](https://doc.qt.io/qt-5/qatomicinteger-obsolete.html).

Qt6 remove those methods, thus we need to replace them.
2022-09-24 22:13:02 +02:00
Ludovic LANGE c2fc1f179e replace BackgroundColorRole/TextColorRole with BackgroundRole/ForegroundRole (qt6)
Since long time ago (12yrs), Qt::BackgroundColorRole/Qt::TextColorRole are aliased by Qt::BackgroundRole/Qt::ForegroundRole
and raise a deprecation warning.

Qt6 remove those values, thus we need to use Qt::BackgroundRole/Qt::ForegroundRole.
2022-09-24 22:06:09 +02:00
Ludovic LANGE 5a18c611e1 replace QTime with QElapsedTimer when possible (qt6)
Since Qt5, some methods of QTime [are deprecated](https://doc.qt.io/qt-5/qtime-obsolete.html).

Qt6 remove those methods, thus in two instances we need to use
a [QElapsedTimer](https://doc.qt.io/qt-6/qelapsedtimer.html) instead of a QTime.

QElapsedTimer is available since Qt5.4, and is already used in the source
code.
2022-09-24 17:54:51 +02:00
Ludovic LANGE 9fb86e649f remove qRegisterMetaTypeStreamOperators (qt6)
Since Qt6, some methods of [QMetaType are removed](https://doc.qt.io/qt-6/qtcore-changes-qt6.html#the-qmetatype-class).

We remove `qRegisterMetaTypeStreamOperators()` calls for Qt >= 6
2022-09-24 17:51:25 +02:00
Ludovic LANGE 07db287407 replace qrand/qsrand with QRandomGenerator (qt6)
Since Qt5, qrand/qsrand methods [are deprecated](https://doc.qt.io/qt-5/qtglobal-obsolete.html#qrand).

Qt6 remove those methods, thus we need to use instead a [QRandomGenerator](https://doc.qt.io/qt-6/qrandomgenerator.html).

QElapsedTimer is available since Qt5.10, and is already used in the source code.
2022-09-24 17:34:40 +02:00
Andy Huska 7b65451874 Merge branch 'add_allowfilterstostayuponclear' 2022-09-23 15:51:02 -05:00
Andy Huska d5c0731366 Merge branch 'collin80-master' into add_allowfilterstostayuponclear 2022-09-23 15:40:09 -05:00
Andy Huska 9312cadd88 Merge branch 'master' of https://github.com/collin80/SavvyCAN into collin80-master 2022-09-23 15:39:45 -05:00
Andy Huska 5ffe161210 more clean up 2022-09-23 15:30:58 -05:00
Andy Huska f38e0b0bfa Took out unnecessary exception recover code
Cuz app is going to crash anyway, no need to make a mess
2022-09-23 15:28:41 -05:00
Collin Kidder a3bd67ea99 Merge pull request #499 from qurrent-llc/fix_addframebadalloc
Fix frames and filteredFrames from growing until out of memory
2022-09-22 18:12:54 -05:00
Collin Kidder 5a4f211ca0 Merge pull request #498 from qurrent-llc/fix_dbc_delete
Fixed regression where non-commented dbc editor node would not delete
2022-09-22 18:11:47 -05:00
Andy Huska 536122f3b5 Merge branch 'fix_dbc_delete' 2022-09-20 14:36:29 -05:00
Andy Huska 53882805e7 Merge branch 'collin80:master' into add_allowfilterstostayuponclear 2022-09-20 06:12:05 -07:00
Andy Huska 6be8e8e002 Merge branch 'collin80:master' into fix_addframebadalloc 2022-09-20 05:54:23 -07:00
Andy Huska aea5e9f9c8 Merge branch 'fix_dbc_delete' of github.com:qurrent-llc/SavvyCAN into fix_dbc_delete 2022-09-20 07:51:45 -05:00
Andy Huska 13c920f971 Fixed regression where non-commented node would not delete
Fixed odd crash due to dbcNode being null on refresh
2022-09-20 07:46:30 -05:00
Andy Huska 42b020e48b Merge pull request #1 from collin80/master
Pull in PRs from upstream fork
2022-09-19 17:39:41 -07:00
Collin Kidder dd5dc9d638 Merge pull request #496 from qurrent-llc/fix_dbc_delete
Fix dbc delete node non-function and dbc delete message occasional crash
2022-09-19 18:48:09 -05:00
Collin Kidder e2ad516bd2 Merge pull request #495 from qurrent-llc/fix_socketcand
Fix two socketcand issues: start up switch to raw mode, crash due to partial frame
2022-09-19 18:47:31 -05:00
Collin Kidder f9934b11fe Merge pull request #494 from qurrent-llc/fix_framesenderloadtrailing0x00
Fixed data string parsing bug where a trailing space is treated as a zero
2022-09-19 18:47:19 -05:00
Collin Kidder c14c5aa241 Merge pull request #484 from Sheimy/patch-1
Solve restore network connection  not working
2022-09-19 18:46:29 -05:00
Andy Huska 9e9195b34e changed default data table font to be fixed-width for easier reading 2022-09-19 16:13:30 -05:00
Andy Huska 40dbf253af Saving, loading, clearing, and appending signal lists working!! 2022-09-19 15:28:53 -05:00
Andy Huska afede9573b Merge branch 'fix_addframebadalloc' 2022-09-19 13:51:31 -05:00
Andy Huska cb94cac205 Fixed issue where filteredFrames was having its capacity changed
when adjusting filters due to appending a QVector of frames which
appears to change the capacity to the number of items appended.
Also fixed bug where preallocsize was being locally defined and
therefore the global version wasn't being updated with unknown
effets.
2022-09-19 13:47:57 -05:00
Andy Huska 6fa84df7e0 Added ability to maintain bus and msg filters when clearing frames 2022-09-19 13:31:00 -05:00
Andy Huska 07d1610a63 Merge branch 'fix_addframebadalloc' 2022-09-19 13:11:22 -05:00
Andy Huska d56b35ea91 Made max # of frames an option in preferences, restart to take effect 2022-09-19 13:10:33 -05:00
Andy Huska fd657b9b9b Merge branch 'fix_addframebadalloc' 2022-09-19 12:48:43 -05:00
Andy Huska 195c90c415 change the max amount of the reserved space for the frames and filteredFrames vectors
to be 99% of the capacity instead of 95%.
Reset initial capacity to be 10M frames for 64-bit machines now that testing is done.
Want to make the capacity adjustable by user, too.
2022-09-18 13:01:34 -05:00
Andy Huska dfc7b095c8 Added node name as part of the signal name that gets copied into the data table 2022-09-17 13:54:59 -05:00
Andy Huska e06112b14c Merge branch 'fix_dbc_delete' 2022-09-17 13:33:13 -05:00
Andy Huska b9899ee229 Merge branch 'fix_socketcand' 2022-09-17 13:33:00 -05:00
Andy Huska 008ac6b744 Merge branch 'fix_framesenderloadtrailing0x00' 2022-09-17 13:32:47 -05:00
Andy Huska 99640d7239 Fixed data string parsing bug where an empty string created by a trailing space would be interpreted as a 0 and then added as a data byte
This affected editing of the data in the table as well as loading data from a saved file
2022-09-17 13:16:02 -05:00
Andy Huska 6cf404701e Bug was due to treating an empty token as a 0, so fixed the string parsing to ignore empty tokens 2022-09-17 13:04:39 -05:00