diff options
Diffstat (limited to 'src/egprs_rlc_compression.h')
-rw-r--r-- | src/egprs_rlc_compression.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/egprs_rlc_compression.h b/src/egprs_rlc_compression.h index 4b6646e..06c75a3 100644 --- a/src/egprs_rlc_compression.h +++ b/src/egprs_rlc_compression.h @@ -6,6 +6,7 @@ #define BITS_TO_BYTES(X) (((X) ? (X)/8 : 0) + 1) #define MOD8(X) ((X) & (0x07)) +#define MOD64(X) ((X + 64) & 0x3F) typedef struct egprs_compress_node{ struct egprs_compress_node *left; @@ -13,6 +14,16 @@ typedef struct egprs_compress_node{ int run_length; } egprs_compress_node; +int decompress_crbb(int8_t compress_bmap_len, uint8_t clr_code_bit, + const uint8_t *orig_buf, bitvec *dest); +int osmo_t4_compress(struct bitvec *bv); +int compress_rbb( + struct bitvec *urbb_vec,/*!< input bitvector to compress */ + struct bitvec *crbb_vec, /*!< Compressed bitmap len */ + uint8_t *uclen_crbb, /*!< Uncompressed bitmap len in CRBB */ + uint8_t max_bits /*!< Maximum remaining bits */ + ); + /* Singleton to manage the EGPRS compression algorithm. */ class egprs_compress { |