96 lines
4.0 KiB
C++
96 lines
4.0 KiB
C++
/**
|
|
* \file bitpack.hh
|
|
* \brief Header for bit-packing functions
|
|
*/
|
|
|
|
#ifndef LZW_SRC_BITPACK_H_
|
|
#define LZW_SRC_BITPACK_H_
|
|
|
|
#include <cstdint>
|
|
#include <string>
|
|
#include <vector>
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
// packing //
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
std::vector<unsigned char> pack(const std::vector<std::uint16_t> &);
|
|
|
|
std::vector<unsigned char> pack_9(std::vector<std::uint16_t>::const_iterator,
|
|
std::vector<std::uint16_t>::const_iterator);
|
|
|
|
std::vector<unsigned char> pack_10(std::vector<std::uint16_t>::const_iterator,
|
|
std::vector<std::uint16_t>::const_iterator,
|
|
std::vector<unsigned char> &);
|
|
|
|
std::vector<unsigned char> pack_11(std::vector<std::uint16_t>::const_iterator,
|
|
std::vector<std::uint16_t>::const_iterator,
|
|
std::vector<unsigned char> &);
|
|
|
|
std::vector<unsigned char> pack_12(std::vector<std::uint16_t>::const_iterator,
|
|
std::vector<std::uint16_t>::const_iterator,
|
|
std::vector<unsigned char> &);
|
|
|
|
std::vector<unsigned char> pack_13(std::vector<std::uint16_t>::const_iterator,
|
|
std::vector<std::uint16_t>::const_iterator,
|
|
std::vector<unsigned char> &);
|
|
|
|
std::vector<unsigned char> pack_14(std::vector<std::uint16_t>::const_iterator,
|
|
std::vector<std::uint16_t>::const_iterator,
|
|
std::vector<unsigned char> &);
|
|
|
|
std::vector<unsigned char> pack_15(std::vector<std::uint16_t>::const_iterator,
|
|
std::vector<std::uint16_t>::const_iterator,
|
|
std::vector<unsigned char> &);
|
|
|
|
std::vector<unsigned char> pack_16(std::vector<std::uint16_t>::const_iterator,
|
|
std::vector<std::uint16_t>::const_iterator,
|
|
std::vector<unsigned char> &);
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
// unpack //
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
std::vector<std::uint16_t> unpack(std::basic_string<unsigned char> &&);
|
|
|
|
std::vector<std::uint16_t>
|
|
unpack_9(std::basic_string<unsigned char>::const_iterator,
|
|
std::basic_string<unsigned char>::const_iterator);
|
|
|
|
std::vector<std::uint16_t>
|
|
unpack_10(std::basic_string<unsigned char>::const_iterator,
|
|
std::basic_string<unsigned char>::const_iterator,
|
|
std::vector<std::uint16_t> &);
|
|
|
|
std::vector<std::uint16_t>
|
|
unpack_11(std::basic_string<unsigned char>::const_iterator,
|
|
std::basic_string<unsigned char>::const_iterator,
|
|
std::vector<std::uint16_t> &);
|
|
|
|
std::vector<std::uint16_t>
|
|
unpack_12(std::basic_string<unsigned char>::const_iterator,
|
|
std::basic_string<unsigned char>::const_iterator,
|
|
std::vector<std::uint16_t> &);
|
|
|
|
std::vector<std::uint16_t>
|
|
unpack_13(std::basic_string<unsigned char>::const_iterator,
|
|
std::basic_string<unsigned char>::const_iterator,
|
|
std::vector<std::uint16_t> &);
|
|
|
|
std::vector<std::uint16_t>
|
|
unpack_14(std::basic_string<unsigned char>::const_iterator,
|
|
std::basic_string<unsigned char>::const_iterator,
|
|
std::vector<std::uint16_t> &);
|
|
|
|
std::vector<std::uint16_t>
|
|
unpack_15(std::basic_string<unsigned char>::const_iterator,
|
|
std::basic_string<unsigned char>::const_iterator,
|
|
std::vector<std::uint16_t> &);
|
|
|
|
std::vector<std::uint16_t>
|
|
unpack_16(std::basic_string<unsigned char>::const_iterator,
|
|
std::basic_string<unsigned char>::const_iterator,
|
|
std::vector<std::uint16_t> &);
|
|
|
|
#endif /* LZW_SRC_BITPACK_H_ */
|