27 #ifndef ROHC_COMP_SCHEMES_WLSB_H    28 #define ROHC_COMP_SCHEMES_WLSB_H    85                const size_t window_width,
    87         __attribute__((nonnull(1)));
    92         __attribute__((nonnull(1)));
    96         __attribute__((warn_unused_result, nonnull(1)));
   100         __attribute__((warn_unused_result, nonnull(1)));
   106         __attribute__((warn_unused_result, nonnull(1)));
   109                          const uint16_t 
value)
   110         __attribute__((warn_unused_result, nonnull(1)));
   112                             const uint16_t 
value,
   114         __attribute__((warn_unused_result, nonnull(1)));
   116                           const uint16_t 
value,
   118         __attribute__((warn_unused_result, nonnull(1)));
   120                              const uint16_t 
value,
   123         __attribute__((warn_unused_result, nonnull(1)));
   126                                 const uint16_t 
value,
   129         __attribute__((warn_unused_result, nonnull(1)));
   132                          const uint32_t 
value)
   133         __attribute__((warn_unused_result, nonnull(1)));
   135                             const uint32_t 
value,
   137         __attribute__((warn_unused_result, nonnull(1)));
   139                           const uint32_t 
value,
   141         __attribute__((warn_unused_result, nonnull(1)));
   144                                 const uint32_t 
value,
   147         __attribute__((warn_unused_result, nonnull(1)));
   150                 const uint32_t sn_bits,
   151                 const size_t sn_bits_nr)
   152         __attribute__((warn_unused_result, nonnull(1)));
   155         __attribute__((warn_unused_result, nonnull(1)));
 bool used
Definition: comp_wlsb.h:46
 
rohc_lsb_shift_t
the different values of the shift parameter of the LSB algorithm 
Definition: interval.h:47
 
size_t next
Definition: comp_wlsb.h:64
 
size_t oldest
Definition: comp_wlsb.h:62
 
#define ROHC_WLSB_WIDTH_MAX
Definition: interval.h:35
 
size_t wlsb_get_k_16bits(const struct c_wlsb *const wlsb, const uint16_t value)
Find out the minimal number of bits of the to-be-encoded value required to be able to uniquely recrea...
Definition: comp_wlsb.c:311
 
size_t bits
Definition: comp_wlsb.h:70
 
size_t wlsb_ack(struct c_wlsb *const wlsb, const uint32_t sn_bits, const size_t sn_bits_nr)
Acknowledge based on the Sequence Number (SN) 
Definition: comp_wlsb.c:769
 
uint32_t value
Definition: comp_wlsb.h:49
 
bool wlsb_is_kp_possible_16bits(const struct c_wlsb *const wlsb, const uint16_t value, const size_t k, const rohc_lsb_shift_t p)
Find out whether the given number of bits is enough to encode value. 
Definition: comp_wlsb.c:457
 
uint32_t sn
Definition: comp_wlsb.h:47
 
void c_add_wlsb(struct c_wlsb *const wlsb, const uint32_t sn, const uint32_t value)
Add a value into a W-LSB encoding object. 
Definition: comp_wlsb.c:96
 
rohc_lsb_shift_t p
Definition: comp_wlsb.h:72
 
size_t count
Definition: comp_wlsb.h:67
 
bool wlsb_is_kp_possible_8bits(const struct c_wlsb *const wlsb, const uint8_t value, const size_t k, const rohc_lsb_shift_t p)
Find out whether the given number of bits is enough to encode value. 
Definition: comp_wlsb.c:227
 
One W-LSB encoding object. 
Definition: comp_wlsb.h:56
 
bool wlsb_is_sn_present(struct c_wlsb *const wlsb, const uint32_t sn)
Whether the given SN is present in the given WLSB window. 
Definition: comp_wlsb.c:809
 
size_t wlsb_get_mink_16bits(const struct c_wlsb *const wlsb, const uint16_t value, const size_t min_k)
Find out the minimal number of bits of the to-be-encoded value required to be able to uniquely recrea...
Definition: comp_wlsb.c:329
 
size_t wlsb_get_kp_32bits(const struct c_wlsb *const wlsb, const uint32_t value, const rohc_lsb_shift_t p)
Find out the minimal number of bits of the to-be-encoded value required to be able to uniquely recrea...
Definition: comp_wlsb.c:574
 
size_t window_width
Definition: comp_wlsb.h:59
 
void wlsb_init(struct c_wlsb *const wlsb, const size_t bits, const size_t window_width, const rohc_lsb_shift_t p)
Initialize the given W-LSB encoding object. 
Definition: comp_wlsb.c:64
 
size_t wlsb_get_k_8bits(const struct c_wlsb *const wlsb, const uint8_t value)
Find out the minimal number of bits of the to-be-encoded value required to be able to uniquely recrea...
Definition: comp_wlsb.c:127
 
size_t wlsb_get_k_32bits(const struct c_wlsb *const wlsb, const uint32_t value)
Find out the minimal number of bits of the to-be-encoded value required to be able to uniquely recrea...
Definition: comp_wlsb.c:537
 
size_t wlsb_get_kp_16bits(const struct c_wlsb *const wlsb, const uint16_t value, const rohc_lsb_shift_t p)
Find out the minimal number of bits of the to-be-encoded value required to be able to uniquely recrea...
Definition: comp_wlsb.c:348
 
size_t wlsb_get_minkp_16bits(const struct c_wlsb *const wlsb, const uint16_t value, const size_t min_k, const rohc_lsb_shift_t p)
Find out the minimal number of bits of the to-be-encoded value required to be able to uniquely recrea...
Definition: comp_wlsb.c:369
 
size_t wlsb_get_mink_32bits(const struct c_wlsb *const wlsb, const uint32_t value, const size_t min_k)
Find out the minimal number of bits of the to-be-encoded value required to be able to uniquely recrea...
Definition: comp_wlsb.c:555
 
One W-LSB window entry. 
Definition: comp_wlsb.h:44
 
bool wlsb_is_kp_possible_32bits(const struct c_wlsb *const wlsb, const uint32_t value, const size_t k, const rohc_lsb_shift_t p)
Find out whether the given number of bits is enough to encode value. 
Definition: comp_wlsb.c:684
 
size_t wlsb_get_kp_8bits(const struct c_wlsb *const wlsb, const uint8_t value, const rohc_lsb_shift_t p)
Find out the minimal number of bits of the to-be-encoded value required to be able to uniquely recrea...
Definition: comp_wlsb.c:144
 
Compute the interpretation interval for LSB and W-LSB encoding.