CCSDS 124.0-B-1 C++ 1.0.0
CCSDS 124.0-B-1 Lossless Compression
Loading...
Searching...
No Matches
encoder.hpp File Reference

CCSDS 124.0-B-1 encoding functions (COUNT, RLE, BE). More...

#include "bitbuffer.hpp"
#include "bitvector.hpp"
#include "config.hpp"
#include "error.hpp"
Include dependency graph for encoder.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  ccsds124
 
namespace  ccsds124::detail
 Pre-computed COUNT encodings for values 1-33.
 

Functions

template<std::size_t MaxBytes>
Error ccsds124::count_encode (BitBuffer< MaxBytes > &output, std::uint32_t A) noexcept
 Counter encoding (CCSDS Section 5.2.2, Equation 9).
 
template<std::size_t MaxBytes, std::size_t N>
Error ccsds124::rle_encode (BitBuffer< MaxBytes > &output, const BitVector< N > &input) noexcept
 Run-length encoding (CCSDS Section 5.2.3, Equation 10).
 
template<std::size_t MaxBytes, std::size_t N>
Error ccsds124::bit_extract (BitBuffer< MaxBytes > &output, const BitVector< N > &data, const BitVector< N > &mask) noexcept
 Bit extraction in reverse order (CCSDS Section 5.2.4, Equation 11).
 
template<std::size_t MaxBytes, std::size_t N>
Error ccsds124::bit_extract_forward (BitBuffer< MaxBytes > &output, const BitVector< N > &data, const BitVector< N > &mask) noexcept
 Bit extraction in forward order.
 
template<std::size_t MaxBytes, std::size_t N1, std::size_t N2>
Error ccsds124::bit_extract (BitBuffer< MaxBytes > &output, const BitVector< N1 > &data, const BitVector< N2 > &mask) noexcept
 Bit extraction with different length vectors (for flexibility).
 

Variables

constexpr std::uint8_t ccsds124::detail::COUNT_VALUES [34]
 
constexpr std::uint8_t ccsds124::detail::COUNT_BITS [34]
 

Detailed Description

CCSDS 124.0-B-1 encoding functions (COUNT, RLE, BE).

Definition in file encoder.hpp.