Commit Graph

28 Commits

Author SHA1 Message Date
DevTekVE 0f985f5d13 [cabana] fix clang17 warning (#30490)
[cabana] Improve signal timing calculation in findsingal.cc

The variables `first_sec` and `last_sec` have been separately initialized first before being used in `std::minmax` for signal timings. This resolves compilation warnings and potential risks of using temporary values of these variables.
old-commit-hash: 2a9986d9480063bb9b53d69a0cca47692c52b6ac
2023-11-18 23:05:10 -08:00
Dean Lee be9d291dad cabana: support suppress highlighted bits (#30336)
* support suppress highlighted bits

d

* faster filtering and sorting

* improve livestream

* specify the context in the connections

* remove inline
old-commit-hash: 01610128bb340f83ebf08b344404330806178825
2023-10-30 09:47:23 -07:00
Dean Lee 03ba671b96 cabana: save settings to user-specific directory (#30328)
* save settings to user-specific directory

* include
old-commit-hash: b73329092c1eeb9b7472db97fcdf5544ee848156
2023-10-25 14:39:41 -07:00
Dean Lee c7efe08e08 cabana: add comparision operator for CanEvent (#29864)
old-commit-hash: ef4c963c60276a62d64a89c158a1a1ff1dbe8a10
2023-09-10 16:09:22 -07:00
Dean Lee 5f4b422305 cpplint: add filter whitespace/semicolon (#29568)
old-commit-hash: f203648de0a9d78121d3a775ae454a43e1211e62
2023-08-23 15:00:30 -07:00
Dean Lee 97e9d55588 cpplint: build/include_what_you_use (#29556)
* include_what_you_use

* remove comments

* include <memory>

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 2d99521e7500902070d0aacce69528bcfd8b9964
2023-08-23 13:25:17 -07:00
Dean Lee 88840e9fe4 cabana: simplifying endian conversion (#28601)
old-commit-hash: 3c398b2e2f2afdc4f81d968e4b0fb025d8190cab
2023-06-20 10:56:40 -07:00
Dean Lee c5543bf21d cabana: support multiplexed signals (#28309)
* support muxed signals

* write multiplexor in generateDBC

* edit multiplex_switch_value in signalView

* no overlapping warning for mux signals

* group signals by multiplexer indicator

* display freq for each multiplexed signals

* remove all multiplexed signals after switch deleted

* disable switch value

* cleanup

* historyView: use getValue

* sort by switch value

* check address

* rename variables

* rename signale type

* parse multiplexed signals in dbcmanater

* cache signal color in member variable

* cleanup num_decimals

* remove sources from dbcmanager and cleanup code

* fix sort

* check mltiplex in operator==

* fix sizehint

* convert multipledxed to normal after changing multiplxor to normal

* throw error on multiple 'M' signals

* add comment

* parse multipled signals in test case

* cleanup

* change order

* cleanup open

* display multiplexed/overlapping signals in binaryview

* sort overlapped signals by size

* refactor dbcmanager

* trimmed

* parse multiplexed signals in test case

* cleanup

* merge master

* space

* use pointer for sigs

* alldbcFiles

* cleanup

* cleanup sparkline

* use std::vector

* skip draw sparkline if isnull

* bigger capacity
old-commit-hash: e08569b0f31953e185369eba9afb7fb20de714fa
2023-06-13 13:22:03 -07:00
Dean Lee eba8100ea5 cabana: refactor dbc manager (#28445)
* rafactor signal

* cleanup

* refacto dbcmanager

* refactor dbcmanger
old-commit-hash: ff4aae85fe39b6442c03963a6a8cbfc900ba61c3
2023-06-08 13:41:55 -07:00
Dean Lee 90bff752c1 cabana: improve dbc parsing (#28321)
old-commit-hash: 2a6458b44ed4189ec110036de956598e39fe8151
2023-05-27 15:43:42 -07:00
Dean Lee c2e86afc8c cabana: support editing comments for messages (#28299)
old-commit-hash: 54506774f05a867ff0f6ab4ab494eeec792f838f
2023-05-25 13:38:58 -07:00
Dean Lee 6cc979a258 cabana: support editing dbc files without a stream (#28294)
* no stream mode

* disable tools menu if no stream

* disable splitter

* cleanup

* refactor matchMessage
old-commit-hash: d5d1ca11d4a5ba5ffcb067fd842540d5334e9360
2023-05-25 10:51:28 -07:00
Dean Lee 1e58a8e991 cabana/findSignalDlg: support filter messages by bus/address/time. (#28186)
old-commit-hash: 13504f5ecfae23fb7b6302f62be797cdefa10990
2023-05-14 10:14:31 -07:00
Dean Lee f30caf9ec5 cabana: add tool to search for possible signals through values. (#28182)
* Add tools to search for possible signals through values.

* use ,
old-commit-hash: 10bdcef0fe1186ee9bdc59dc04237bae005df22f
2023-05-13 14:05:14 -07:00
Dean Lee 2b9c35ddf7 cabana: support all features except video in live stream mode. (#27994)
old-commit-hash: 91dc064ac730302ae6e6b38eddd928e702bbd0e1
2023-04-21 13:23:17 -07:00
Dean Lee 640d68e3bc cabana: move dbc related files to dbc/ (#27712)
* move dbc related files to dbc/

* move generate_dbc_json.py to dbc/
old-commit-hash: 8903e03c8844df03783ae78d97e1294d0869ffea
2023-03-28 11:52:28 -07:00
Willem Melching e0ba3902df cabana: add support for multiple DBC files (#27435)
* split out dbc file logic into separate file

* emit dbc file changed

* change to list of dbc files

* handle missing DBC file

* dbcmanager emits signal

* close existing files before loading new one

* add placeholder open for bus menu

* implement open dbc for bus

* emit signals relevant for current dbc

* move logic into findDBC

* fix use after free

* show currently loaded names in load dialog

* enable/disable load save menus

* handle saving

* add save as to recents

* handle file already open

* do not assert

* fix return and throw on file open error

* fix test maybe

* remove todo

* typo

* fix new dbc

* fix loading fingerprint on macos

* handle replacing a currently open dbc

* fix reference and handle exception

* fix indendation
old-commit-hash: 4ab2131ec9e21d9784f2f423bd6b21c9914cd661
2023-03-27 10:29:44 -07:00
Dean Lee 01a5616f82 cabana: improve find similar bits (#27651)
* improve find similar bits

* 2 precision
old-commit-hash: 89d767da49a32bd78024ac224236f82bf2b2fff5
2023-03-22 11:02:34 -07:00
Dean Lee 35e5b4d927 cabana: group CAN events by message id to reduce the time complex from O(N) to O(1) (#27601)
* refactor streams

* helper function xLessThan

* fix fill gaps
old-commit-hash: 74db5a4b421c822065677b12c4493c4e20aa2a9b
2023-03-17 10:16:14 -07:00
Willem Melching 918bad4847 cabana: DBCManager only expose methods/signals through MessageId (#27540)
old-commit-hash: 0afd3bab34432e0ba83818c264f17e3ef16005df
2023-03-14 11:31:04 -07:00
Willem Melching f0d648d8c6 cabana: refactor Msg and Signal into dbc.cc (#27552)
old-commit-hash: e4d591ecbfaaf12b267e3f93927a89e9b4f6a7b9
2023-03-10 11:19:37 -08:00
Dean Lee 972e91463c cabana: add support for load&save extra dbc info (#27203)
* support extra info

* support undo/redo

* fix undo/redo

* cleanup

* fix regexp

* refactor dbcmanager

* replace text in headerview

* fix binary::refresh

* cleanup

* use QRegularExpression

* add desc validation

* edit val description in table

* cleanup
old-commit-hash: ac0dbf74bc835faa46beab4bbb948c95597e4e67
2023-02-17 19:31:54 -08:00
Willem Melching c9a2d19596 cabana: refactor message id from QString to struct (#27352)
* cabana: refactor message id from QString to struct

* fix tabbar

* fix findsimilarbits

* optimize hash function

* cleanup sorting

* use in updateLastMsgsTo
old-commit-hash: 5078c918056c189a3ec84bc63231fbae75c57eda
2023-02-15 12:39:03 -08:00
Dean Lee 504453c3e4 Cabana: support live streaming (#26946)
* support live streaming

* update live stream's time

* cleanup stream classes

* disable video control in live streaming mode

* emit streamStarted() in LiveStream::streamThread

* disable some features in live streaming mode

* refactor charts to support live streaming mode

* disable dynamic mode checkbox in live streaming mode

* updateDispalyRange

* thread safe events

* TODO: add support for ZMQ

* atomic time stamp

* only keep settings.cached_segment_limit*60  seconds data in liveStream

* make charts work better in live mode

* cleanup ChartView

* fix toolbar

* cleanup

cleanup

* disable openpilotPrefix and useOpenGL on macos

* add comment

* exit gracefully

* support ZMQ

* use ::operator new/delete

* cleanup streams

* cleanup

* align stream buffers

* check looping back

* check if series is empty

* cleanup

* add TODO: write stream to log file to replay it

* upper_bound

* remove class member event_range

* change default settings value

* cleanup updateDisplayrange

* fix merge error
old-commit-hash: f9490739ab37ae680aef272d51eb3cf2b36b4103
2023-01-19 15:26:00 -08:00
Dean Lee f6f6feb922 cabana: use Qt::Window flag for FindSimilarBitsDlg (#26938)
use Qt::Window flag for FindSimilarBitsDlg
old-commit-hash: aaed3537780b5082d427667d6ab4070db2e7e21f
2023-01-13 11:33:03 -08:00
Dean Lee 270893d562 cabana: double click on an item in FindSimilarBitsDlg to open the message in detailView (#26930)
* double click to open message

* remove qDebug
old-commit-hash: 53ec07edbd591296602658080df71d91e8629540
2023-01-12 13:39:51 -08:00
Dean Lee 16d5526839 cabana: fix find similar bits (#26918)
* dynamic find bit

* change

* Revert "change"

This reverts commit 12cf513e2725a52ee40b8999521adcd6ecb00221.

* change sorting and headers

* make perc a float

Co-authored-by: Shane Smiskol <shane@smiskol.com>
old-commit-hash: f3fa4d759d5967e8590492005b8ede8bd17a6981
2023-01-11 21:21:11 -08:00
Dean Lee 6ccaa89961 Cabana: add tool to find similar bits (#26834)
* find similar bits

* set window title
old-commit-hash: 65509669b676bad41d57443454dbea8ffbc1c8f7
2022-12-28 16:51:02 -08:00