Skip to main content

Module packed

Module packed 

Source
Expand description

Unpacking of uncompressed, bit-packed sensor data.

Every kernel has a scalar reference implementation (*_scalar) that is the specification. Fast paths (word-at-a-time scalar, SSE4.1, NEON, WASM SIMD128) are tested bit-for-bit against it (see tests and tests/simd_equivalence.rs).

Structs§

PackedLayout
Description of a packed raster.

Functions§

complete_samples
Samples of bits bits whose bits lie entirely within the first len bytes of a row packed in order (word orders need whole words).
unpack
Unpack src into dst rows of dst_stride samples. A source too short for every row is an error unless lenient (recovering truncated data): then complete rows and the complete samples of a partial final row are unpacked, and the remaining samples are left untouched (callers pass zeroed buffers).
unpack_row
Unpack one row of dst.len() samples.
unpack_row_partial
unpack_row for a row cut short by truncated input: samples not entirely within src are set to zero instead of being decoded from padding. Returns the number of complete samples.
unpack_row_scalar
Reference implementation for every packing (bit pump based).