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

ROHC decompression routines. More...

#include <rohc/rohc.h>
#include <rohc/rohc_packets.h>
#include <rohc/rohc_traces.h>
#include <rohc/rohc_buf.h>
#include <rohc/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  rohc_decomp_last_packet_info_t
 Some information about the last decompressed packet. More...
struct  rohc_decomp_general_info_t
 Some general information about the decompressor. More...

Defines

#define ROHC_EXPORT

Enumerations

enum  rohc_d_state { NO_CONTEXT = 1, STATIC_CONTEXT = 2, FULL_CONTEXT = 3 }
 The ROHC decompressor states. More...
enum  rohc_decomp_state_t { ROHC_DECOMP_STATE_NC = 1, ROHC_DECOMP_STATE_SC = 2, ROHC_DECOMP_STATE_FC = 3 }
 The ROHC decompressor states. More...
enum  rohc_decomp_features_t { ROHC_DECOMP_FEATURE_NONE = 0, ROHC_DECOMP_FEATURE_CRC_REPAIR = (1 << 0), ROHC_DECOMP_FEATURE_COMPAT_1_6_x = (1 << 1) }
 The different features of the ROHC decompressor. More...

Functions

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.
struct rohc_decomp *ROHC_EXPORT rohc_decomp_new (const rohc_cid_type_t cid_type, const rohc_cid_t max_cid, const rohc_mode_t mode, struct rohc_comp *const comp)
 Create a new ROHC decompressor.
struct rohc_decomp *ROHC_EXPORT rohc_decomp_new2 (const rohc_cid_type_t cid_type, const rohc_cid_t max_cid, const rohc_mode_t mode)
 Create a new ROHC decompressor.
void ROHC_EXPORT rohc_decomp_free (struct rohc_decomp *const decomp)
 Destroy the given ROHC decompressor.
int ROHC_EXPORT rohc_decompress (struct rohc_decomp *decomp, unsigned char *ibuf, int isize, unsigned char *obuf, int osize)
 Decompress the given ROHC packet into one uncompressed packet.
int ROHC_EXPORT rohc_decompress2 (struct rohc_decomp *const decomp, const struct rohc_ts arrival_time, const unsigned char *const rohc_packet, const size_t rohc_packet_len, unsigned char *const uncomp_packet, const size_t uncom_packet_max_len, size_t *const uncomp_packet_len)
 Decompress the given ROHC packet into one uncompressed packet.
rohc_status_t ROHC_EXPORT rohc_decompress3 (struct rohc_decomp *const decomp, const struct rohc_buf rohc_packet, struct rohc_buf *const uncomp_packet, struct rohc_buf *const rcvd_feedback, struct rohc_buf *const feedback_send)
 Decompress the given ROHC packet into one uncompressed packet.
int ROHC_EXPORT rohc_decompress_both (struct rohc_decomp *decomp, unsigned char *ibuf, int isize, unsigned char *obuf, int osize, int large)
 Decompress both large and small CID packets.
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_decomp_state_t state)
 Give a description for the given ROHC decompression context state.
bool ROHC_EXPORT rohc_decomp_get_general_info (const struct rohc_decomp *const decomp, rohc_decomp_general_info_t *const info)
 Get some general information about the decompressor.
bool ROHC_EXPORT rohc_decomp_get_last_packet_info (const struct rohc_decomp *const decomp, rohc_decomp_last_packet_info_t *const info)
 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)
 Set the type of CID to use for the given decompressor.
bool ROHC_EXPORT rohc_decomp_get_cid_type (const struct rohc_decomp *const decomp, rohc_cid_type_t *const cid_type)
 Get the CID type that the decompressor uses.
bool ROHC_EXPORT rohc_decomp_set_max_cid (struct rohc_decomp *const decomp, const size_t max_cid)
 Set the MAX_CID allowed for the given decompressor.
bool ROHC_EXPORT rohc_decomp_get_max_cid (const struct rohc_decomp *const decomp, size_t *const max_cid)
 Get the maximal CID value the decompressor uses.
bool ROHC_EXPORT rohc_decomp_set_mrru (struct rohc_decomp *const decomp, const size_t mrru)
 Set the Maximum Reconstructed Reception Unit (MRRU).
bool ROHC_EXPORT rohc_decomp_get_mrru (const struct rohc_decomp *const decomp, size_t *const mrru)
 Get the Maximum Reconstructed Reception Unit (MRRU).
bool ROHC_EXPORT rohc_decomp_set_features (struct rohc_decomp *const decomp, const rohc_decomp_features_t features)
 Enable/disable features for ROHC decompressor.
bool ROHC_EXPORT rohc_decomp_profile_enabled (const struct rohc_decomp *const decomp, const rohc_profile_t profile)
 Is the given decompression profile enabled for a decompressor?
bool ROHC_EXPORT rohc_decomp_enable_profile (struct rohc_decomp *const decomp, const rohc_profile_t profile)
 Enable a decompression profile for a decompressor.
bool ROHC_EXPORT rohc_decomp_disable_profile (struct rohc_decomp *const decomp, const rohc_profile_t profile)
 Disable a decompression profile for a decompressor.
bool ROHC_EXPORT rohc_decomp_enable_profiles (struct rohc_decomp *const decomp,...)
 Enable several decompression profiles for a decompressor.
bool ROHC_EXPORT rohc_decomp_disable_profiles (struct rohc_decomp *const decomp,...)
 Disable several decompression profiles for a decompressor.
bool ROHC_EXPORT rohc_decomp_set_traces_cb (struct rohc_decomp *const decomp, rohc_trace_callback_t callback)
 Set the callback function used to manage traces in decompressor.
bool ROHC_EXPORT rohc_decomp_set_traces_cb2 (struct rohc_decomp *const decomp, rohc_trace_callback2_t callback, void *const priv_ctxt)
 Set the callback function used to manage traces in decompressor.

Detailed Description

ROHC decompression routines.

Author:
Didier Barvaux <didier.barvaux@toulouse.viveris.com>
Didier Barvaux <didier@barvaux.org>
David Moreau from TAS

Define Documentation

#define ROHC_EXPORT

Macro that handles DLL export declarations gracefully