|
CCSDS 124.0-B-1 C 1.0.0
CCSDS 124.0-B-1 Lossless Compression
|
CCSDS Section 5.2: Decoding primitives (inverse of encoding). More...
Functions | |
| int | ccsds124_count_decode (bitreader_t *reader, uint32_t *value) |
| Counter decoding (inverse of ccsds124_count_encode). | |
| int | ccsds124_rle_decode (bitreader_t *reader, bitvector_t *result, size_t length) |
| Run-length decoding (inverse of ccsds124_rle_encode). | |
| int | ccsds124_bit_insert (bitreader_t *reader, bitvector_t *data, const bitvector_t *mask) |
| Bit insertion (inverse of ccsds124_bit_extract). | |
CCSDS Section 5.2: Decoding primitives (inverse of encoding).
These functions decode the encoded formats back to original values.
| int ccsds124_bit_insert | ( | bitreader_t * | reader, |
| bitvector_t * | data, | ||
| const bitvector_t * | mask | ||
| ) |
Bit insertion (inverse of ccsds124_bit_extract).
Inserts extracted bits back into a vector at mask positions.
| [in,out] | reader | Bit reader (position advanced) |
| [out] | data | Destination data vector |
| [in] | mask | Mask indicating insertion positions |
Definition at line 287 of file decompress.c.
References bitreader_read_bit(), bitreader_remaining(), bitvector_get_set_positions(), bitvector_hamming_weight(), bitvector_set_bit(), CCSDS124_ERROR_INVALID_ARG, CCSDS124_ERROR_UNDERFLOW, CCSDS124_MAX_PACKET_LENGTH, CCSDS124_OK, and bitvector::length.
Referenced by ccsds124_decompress_packet_internal().
| int ccsds124_count_decode | ( | bitreader_t * | reader, |
| uint32_t * | value | ||
| ) |
Counter decoding (inverse of ccsds124_count_encode).
Decodes a COUNT-encoded value from the bit stream.
| [in,out] | reader | Bit reader (position advanced) |
| [out] | value | Decoded value (0 = terminator) |
Definition at line 175 of file decompress.c.
References bitreader_t::bit_pos, bitreader_read_bit(), bitreader_read_bits(), bitreader_remaining(), CCSDS124_ERROR_INVALID_ARG, CCSDS124_ERROR_UNDERFLOW, and CCSDS124_OK.
Referenced by ccsds124_decompress_packet_internal(), ccsds124_discover_packet_length(), ccsds124_rle_decode(), and skip_rle_sequence_span().
| int ccsds124_rle_decode | ( | bitreader_t * | reader, |
| bitvector_t * | result, | ||
| size_t | length | ||
| ) |
Run-length decoding (inverse of ccsds124_rle_encode).
Decodes an RLE-encoded bit vector from the bit stream.
| [in,out] | reader | Bit reader (position advanced) |
| [out] | result | Decoded bit vector |
| [in] | length | Expected bit vector length |
Definition at line 251 of file decompress.c.
References bitvector_init(), bitvector_set_bit(), bitvector_zero(), ccsds124_count_decode(), CCSDS124_ERROR_INVALID_ARG, CCSDS124_ERROR_OVERFLOW, and CCSDS124_OK.
Referenced by ccsds124_decompress_packet_internal().