Crates.io | cfdp-rs |
lib.rs | cfdp-rs |
version | 0.2.0 |
source | src |
created_at | 2024-09-11 08:42:28.423859 |
updated_at | 2024-11-26 09:58:53.346435 |
description | High level CCSDS File Delivery Protocol components |
homepage | https://egit.irs.uni-stuttgart.de/rust/cfdp |
repository | https://egit.irs.uni-stuttgart.de/rust/cfdp |
max_upload_size | |
id | 1371692 |
size | 382,307 |
The cfdp-rs
Rust crate offers some high-level CCSDS File Delivery Protocol (CFDP) components to
perform file transfers according to the CCSDS Blue Book 727.0-B-5.
The underlying base packet library used to generate the packets to be sent is the
spacepackets library.
The goal of this library is to be flexible enough to support the use-cases of both on-board
software and of ground software. It has support to make integration on std
systems as simple
as possible, but also has sufficient abstraction to allow for integration onno_std
environments
and can be used on these systems as well as long as the alloc
feature is activated.
Please note even though the alloc
feature is required for the core handlers, these components
will only allocate memory at initialization time and thus are still viable for systems where
run-time allocation is prohibited.
std
: Enables functionality relying on the standard library.alloc
: Enables features which require allocation support.
Enabled by the std
feature.serde
: Adds serde
support for most types by adding Serialize
and Deserialize
derive
sdefmt
: Add support for the defmt
by adding the
defmt::Format
derive on many types.You can check the documentation of individual modules for various usage examples.
Coverage was generated using grcov
. If you have not done so
already, install the llvm-tools-preview
:
rustup component add llvm-tools-preview
cargo install grcov --locked
After that, you can simply run coverage.py
to test the project with coverage. You can optionally
supply the --open
flag to open the coverage report in your webbrowser.