* build message lookup table in dbc
* constify it
* no need to make this more dense
* Return empty values and log an error for invalid addresses.
log error for undefined signal
add comment
use LOGE
* save one map lookup
* only try what is to be traught
* rename back
* from merge
* show addr
---------
Co-authored-by: Shane Smiskol <shane@smiskol.com>
* CANParser: parse all signals for a message
* update tests
* just use a pair
* rm enforce checks
* rm that
* spacing
* fix nonexistent message test
* message addr check should not have been deleted
* can be cleaned up more
* remove that too
* add comment back
* revert default bus behavior
revert default bus behavior
* can combine this loop
* unused map
* add all
* ensure we track all signals
* remove sanity check
* this wasn't tested before
* Revert "this wasn't tested before"
This reverts commit eb5e9209eb.
---------
Co-authored-by: Shane Smiskol <shane@smiskol.com>
* refactor to avoid undefined signals
* add non-zero offset check
* Revert "add non-zero offset check"
This reverts commit bc0bb60f4f.
* clean up
* use underscores, we haven't standardized one or the other yet
* use message name
* test it works
---------
Co-authored-by: Shane Smiskol <shane@smiskol.com>
* reduce the const of copying signal values in CANParser::query_latest
* pass by reference
* use for range loop
* update_strings
* use assign
* track all signals
* use iterator & pointer to avoid copy SignalValue from vector
* use normal dict for vl_all
* update tests
* fix error in merge master
* change thresholds
reduce thresholds
* Trigger CI
* Trigger CI
* Trigger CI
* cleanup ctor
* reduce threshold
* revert changes to test_parser.py
* change thresholds
* remove update_string() from cython
* comment out test_performance_one_signal
* reduce thresholds
* test
* update
* update
* revert that for now
* update
* update
---------
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
* initial commit, bring over from deanlee's PR based on newer commit
Co-authored-by: Shane Smiskol <shane@smiskol.com>
* fix msb, lsb, size
* fix lsb
* clean up
* need this for CI
* add missing body checksum/counter
* get dir from BASEDIR first, then $HOME
* fix CI
* doesn't work
* just hardcode when compiling
* remove process_dbc
* add test for startup time
* test can parsing
* fix
* better
* bye bye dbc.py
* fix startswith
* add function to get dbc names for plotjuggler
* check DBC_FILE_PATH
* revert
* rename
* slightly more consistent at ~0.57 seconds
* make sure the tests make sense
* test ms per line
* use ctre
* Revert "use ctre"
This reverts commit 5e1a4440e4.
* compile regex at import time
* add debug print and lower test time
* add comment
* 0.02 ms per line max
* better error messages
* only include what we need, and make it explicit
* check total time
check total time
* no global
* always a list
* not a c loop any more
* default to list
* use hex
* make static (only calculate path once)
* seems to be more consistent now (30-38 ms)
Co-authored-by: Dean Lee <deanlee3@gmail.com>
* could work
* should be light-speed
* clean up
* clean up
* make sure updated is empty if nothing is updated
updating without a msg is undefined behavior
* should be fast enough
* more test
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
* add updated field
* rename to updated
* draft
* clean up
* function for resetting
* *minor* refactor
* clean up names
* keep track of updated vals in the cc parser
* remove extra lines
* remove ts
* match parser_pyx
* cleaner to just call the cpp function as we don't need to aggregate updated values
* draft
* some tests
* fix test
* clean up
clean up
* test clean up
* add clarifying comments
* Revert "remove ts"
This reverts commit fd4558289d.
* fix order
* use vals
* fix dup
* subaru global: use standard checksum signal naming convention
* subaru checksum
* ignore first byte
* update other subaru dbcs
* revert outback changes, checksum is in a different byte