ROHC compression/decompression library
Data Structures | Defines | Enumerations | Functions
rohc_decomp.h File Reference

ROHC decompression routines. More...

#include "rohc.h"
#include "rohc_comp.h"
Include dependency graph for rohc_decomp.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  __attribute__
 Some information about the last compressed packet. More...




enum  rohc_d_state { NO_CONTEXT = 1, STATIC_CONTEXT = 2, FULL_CONTEXT = 3 }
 The ROHC decompressor states. More...


struct rohc_decomp *ROHC_EXPORT rohc_alloc_decompressor (struct rohc_comp *compressor)
 Create one ROHC decompressor.
void ROHC_EXPORT rohc_free_decompressor (struct rohc_decomp *decomp)
 Destroy one ROHC decompressor.
int ROHC_EXPORT rohc_decompress (struct rohc_decomp *decomp, unsigned char *ibuf, int isize, unsigned char *obuf, int osize)
 Decompress a ROHC packet.
int ROHC_EXPORT rohc_decompress_both (struct rohc_decomp *decomp, unsigned char *ibuf, int isize, unsigned char *obuf, int osize, int large) ROHC_DEPRECATED("please do not use this function anymore
int ROHC_EXPORT use rohc_decomp_set_cid_type () and rohc_decomp_set_max_cid()" "instead")
int ROHC_EXPORT rohc_d_statistics (struct rohc_decomp *decomp, unsigned int indent, char *buffer)
 Output the decompression statistics of one decompressor to a buffer. The buffer must be large enough to store all the statistics.
void ROHC_EXPORT clear_statistics (struct rohc_decomp *decomp)
 Clear all the statistics.
const char *ROHC_EXPORT rohc_decomp_get_state_descr (const rohc_d_state state)
 Give a description for the given ROHC decompression context state.
bool ROHC_EXPORT rohc_decomp_get_last_packet_info (const struct rohc_decomp *const decomp, rohc_decomp_last_packet_info_t *const info) __attribute__((warn_unused_result))
 Get some information about the last decompressed packet.
void ROHC_EXPORT user_interactions (struct rohc_decomp *decomp, int feedback_maxval)
 Update feedback interval by the user.
bool ROHC_EXPORT rohc_decomp_set_cid_type (struct rohc_decomp *const decomp, const rohc_cid_type_t cid_type) __attribute__((warn_unused_result))
 Set the type of CID to use for the given decompressor.
bool ROHC_EXPORT rohc_decomp_set_max_cid (struct rohc_decomp *const decomp, const size_t max_cid) __attribute__((warn_unused_result))
 Set the MAX_CID allowed for the given decompressor.
bool ROHC_EXPORT rohc_decomp_set_mrru (struct rohc_decomp *const decomp, const size_t mrru) __attribute__((warn_unused_result))
 Set the Maximum Reconstructed Reception Unit (MRRU).
bool ROHC_EXPORT rohc_decomp_set_traces_cb (struct rohc_decomp *const decomp, rohc_trace_callback_t callback) __attribute__((warn_unused_result))
 Set the callback function used to manage traces in decompressor.

Detailed Description

ROHC decompression routines.

Didier Barvaux <>
Didier Barvaux <>
The hackers from ROHC for Linux
David Moreau from TAS

Define Documentation


Macro that handles DLL export declarations gracefully

Function Documentation

bool ROHC_EXPORT rohc_decomp_set_traces_cb ( struct rohc_decomp decomp,
rohc_trace_callback_t  callback 

Set the callback function used to manage traces in decompressor.

decompThe ROHC decompressor
  • The callback function used to manage traces
  • NULL to remove the previous callback
true on success, false otherwise

References d_statistics::received, rohc_error, ROHC_PROFILE_GENERAL, ROHC_TRACE_DECOMP, rohc_decomp::stats, and rohc_decomp::trace_callback.

int ROHC_EXPORT rohc_decompress_both ( struct rohc_decomp decomp,
unsigned char *  ibuf,
int  isize,
unsigned char *  obuf,
int  osize,
int  large