Commit Graph

24 Commits (main)

Author SHA1 Message Date
Joey Hines 38ed49fbe3
Added deframer support
ci/woodpecker/tag/woodpecker Pipeline was successful Details
2024-08-17 15:58:25 -06:00
Joey Hines a125c08032
Add ability to parse hex strings 2024-08-15 19:54:34 -06:00
Joey Hines 333a92b729
Added a string printer and updated README
ci/woodpecker/push/woodpecker Pipeline failed Details
+ Fixed a unit test as well
2024-04-28 15:33:19 -06:00
Joey Hines 3274386ccf
Added support for layered formats
ci/woodpecker/push/woodpecker Pipeline was successful Details
ci/woodpecker/tag/woodpecker Pipeline was successful Details
+ Formats can include sub-formats of previously defined formats
+ This search is done post config building so any format in the global config can be used
+ Clippy + fmt
2022-06-19 14:08:37 -06:00
Joey Hines f2cec4c89e
Added file input + stdin support
ci/woodpecker/push/woodpecker Pipeline was successful Details
ci/woodpecker/tag/woodpecker Pipeline was successful Details
+ Files/stdin input can be binary or ascii
+ Handles piping from other programs
+ Misc test fixes
+ Updated readme
+ clippy + fmt
2022-05-07 18:35:06 -06:00
Joey Hines 5a98f84063
Added global config directory
ci/woodpecker/push/woodpecker Pipeline was successful Details
+ Should be platform independent thanks to platform-dirs
+ All config files in the directory are used
+ Some optimizations could be made so now all config files are loaded.
+ clippy + fmt
2022-05-03 20:11:54 -06:00
Joey Hines ace4b9aa10
Add environment fallback for config path
ci/woodpecker/push/woodpecker Pipeline was successful Details
ci/woodpecker/tag/woodpecker Pipeline was successful Details
+ FORMATY_CONFIG is the fallback for the optional config path
+ If -c is not provided, we go to the system config
2022-04-21 19:53:02 -06:00
Joey Hines 9244cebad3
Added more options for input data
ci/woodpecker/push/woodpecker Pipeline was successful Details
ci/woodpecker/tag/woodpecker Pipeline was successful Details
+ -b flag allows you to specify the base of the input data, useful if the data does not have a prefix or is a strange base
+ -i allows you to pass in array or string data
2022-04-21 19:28:04 -06:00
Joey Hines d956c111d8
Fixed CCSDS parsing
ci/woodpecker/push/woodpecker Pipeline was successful Details
ci/woodpecker/tag/woodpecker Pipeline was successful Details
+ Using bitvec now for parsing binary data
+ Fixed issues with how some data was handled across byte boundaries
+ Updated CCSDS def
+ Added test to verify good ccsds parsing
+ clippy + fmt
2022-04-17 10:19:44 -06:00
Joey Hines 415a9c6ee1
Fixed issue with array parse in CLI
ci/woodpecker/push/woodpecker Pipeline was successful Details
ci/woodpecker/tag/woodpecker Pipeline was successful Details
+ octals were not ignoring base 10 zeros
+ binary parsing was trying to parse base 1
+ clippy + fmt
2022-04-11 21:18:56 -06:00
Joey Hines 70a3c260e6
Improved docs + a bunch of fixes
ci/woodpecker/push/woodpecker Pipeline was successful Details
ci/woodpecker/tag/woodpecker Pipeline was successful Details
+ Better error handling
  + Line numbers in toml errors should now match the file
  + Errors during parsing show where in the bit stream they failed
+ Fixed some issues with string, float, and double parsing reporting the wrong bit width
+ Updated docs and added the example.toml config
+ clipppy + fmt
2022-04-10 10:42:05 -06:00
Joey Hines 1cf7f06230
Added additional printers
+ Data types can be printed in different formats
+ The formats respect endianness
+ Fixed tests
+ clippy+fmt
2022-04-09 13:33:55 -06:00
Joey Hines 6407335362
Fmt + Clippy 2022-04-09 12:40:37 -06:00
Joey Hines 59351fb699
Added default formatters + error handling 2022-04-09 12:34:15 -06:00
Joey Hines f8ba81e2ca
Fully Working CCSDS parsing
+ updated ccsds config to make it work, as I expect it to at least
2022-04-09 11:25:09 -06:00
Joey Hines e822d9ff13
Added endianness support 2022-04-05 20:45:58 -06:00
Joey Hines 2697b4b848
Added README.md LICENSE.md
+ Also made --help more useful
2021-10-09 14:09:21 -06:00
Joey Hines ef8918d517
fmt + clippy 2021-10-09 14:00:49 -06:00
Joey Hines bb6f331c75
Cleared up issue with parsing ints
+ Endianness was all out of whack
+ Everything is currently handled as little endian, easy to add a config for endianness later
+ num-bigint comes in clutch, it now handles the shifting of bits
2021-10-09 13:58:41 -06:00
Joey Hines 6daf3a55f2
Added examples and better error reporting
+ The field that errors is now reported
+ The formats/ dir contains all predefined formats
  + Includes CCSDS packet for now
+ There appears to be an issue with bit formatting, the APID field is not being parsed correctly (upper 8 bits is not being factored in
2021-10-09 10:57:34 -06:00
Joey Hines 4e9f4bff1d
Added string and bytes formatting
+ String fields are always null terminated and have a max length
+ Byte fields are made of raw bytes, and read data until they hit a max length or the end of data is reached
2021-10-09 10:05:32 -06:00
Joey Hines 652682cb19
Added floating point formatting
+ Supports single and double precession formatting
+ Added Error handling from the formatting functions
2021-10-09 09:30:02 -06:00
Joey Hines 9e5b0aafbd
Int formatting working
+ Using num-bigint to support arbitrarily sized ints
+ Added formatting tests
2021-10-09 08:42:17 -06:00
Joey Hines b85ba31f91
Initial Commit
+ Basic implementation working with just unsigned ints
+ Can fetch data from arbitrary bit positions in a byte string
+ TOML config implementation for describing data
+ Simple CLI
2021-09-11 12:21:34 -06:00