37 #include <rohc/rohc.h>
38 #include <rohc/rohc_packets.h>
39 #include <rohc/rohc_traces.h>
40 #include <rohc/rohc_time.h>
41 #include <rohc/rohc_buf.h>
46 # include <linux/types.h>
54 # define ROHC_EXPORT __declspec(dllexport)
264 const unsigned char *
const udp,
265 const unsigned char *
const payload,
266 const unsigned int payload_size,
268 __attribute__((warn_unused_result));
289 void *
const user_context)
290 __attribute__((warn_unused_result));
300 void *
const rand_priv)
301 __attribute__((warn_unused_result));
307 void *
const priv_ctxt)
308 __attribute__((warn_unused_result));
311 const struct rohc_buf uncomp_packet,
313 __attribute__((warn_unused_result));
317 __attribute__((warn_unused_result));
320 __attribute__((warn_unused_result));
329 __attribute__((warn_unused_result));
333 __attribute__((warn_unused_result));
336 __attribute__((warn_unused_result));
340 __attribute__((warn_unused_result));
343 __attribute__((warn_unused_result));
347 __attribute__((warn_unused_result));
350 __attribute__((warn_unused_result));
353 size_t *const max_cid)
354 __attribute__((warn_unused_result));
358 __attribute__((warn_unused_result));
363 __attribute__((warn_unused_result));
367 __attribute__((warn_unused_result));
371 __attribute__((warn_unused_result));
381 __attribute__((warn_unused_result));
384 const
size_t ir_timeout,
385 const
size_t fo_timeout)
386 __attribute__((warn_unused_result));
390 __attribute__((warn_unused_result));
398 rohc_comp_general_info_t *const info)
399 __attribute__((warn_unused_result));
403 __attribute__((warn_unused_result));
406 __attribute__((warn_unused_result, const));
Definition: rohc_comp.h:232
bool ROHC_EXPORT rohc_comp_get_cid_type(const struct rohc_comp *const comp, rohc_cid_type_t *const cid_type)
Get the CID type that the compressor uses.
Definition: rohc_comp.c:1722
int(* rohc_comp_random_cb_t)(const struct rohc_comp *const comp, void *const user_context)
The prototype of the callback for random numbers.
Definition: rohc_comp.h:288
size_t rohc_cid_t
Definition: rohc.h:195
rohc_packet_t packet_type
Definition: rohc_comp.h:154
bool ROHC_EXPORT rohc_comp_force_contexts_reinit(struct rohc_comp *const comp)
Force the compressor to re-initialize all its contexts.
Definition: rohc_comp.c:964
bool ROHC_EXPORT rohc_comp_set_features(struct rohc_comp *const comp, const rohc_comp_features_t features)
Enable/disable features for ROHC compressor.
Definition: rohc_comp.c:1758
rohc_comp_features_t features
Definition: rohc_comp_internals.h:127
bool context_used
Definition: rohc_comp.h:150
rohc_mode_t
ROHC operation modes.
Definition: rohc.h:111
bool ROHC_EXPORT rohc_comp_set_mrru(struct rohc_comp *const comp, const size_t mrru)
Set the Maximum Reconstructed Reception Unit (MRRU).
Definition: rohc_comp.c:1592
bool ROHC_EXPORT rohc_comp_get_general_info(const struct rohc_comp *const comp, rohc_comp_general_info_t *const info)
Get some general information about the compressor.
Definition: rohc_comp.c:2082
unsigned short version_minor
Definition: rohc_comp.h:140
bool ROHC_EXPORT rohc_comp_set_traces_cb2(struct rohc_comp *const comp, rohc_trace_callback2_t callback, void *const priv_ctxt)
Set the callback function used to manage traces in compressor.
Definition: rohc_comp.c:432
unsigned short version_major
Definition: rohc_comp.h:202
bool ROHC_EXPORT rohc_comp_disable_profile(struct rohc_comp *const comp, const rohc_profile_t profile)
Disable a compression profile for a compressor.
Definition: rohc_comp.c:1387
bool ROHC_EXPORT rohc_comp_set_wlsb_window_width(struct rohc_comp *const comp, const size_t width)
Set the window width for the W-LSB encoding scheme.
Definition: rohc_comp.c:1016
rohc_status_t
The status code of several functions in the library API.
Definition: rohc.h:79
The ROHC compressor.
Definition: rohc_comp_internals.h:121
rohc_cid_type_t
The different types of Context IDs (CID)
Definition: rohc.h:176
Some general information about the compressor.
Definition: rohc_comp.h:199
bool ROHC_EXPORT rohc_comp_get_max_cid(const struct rohc_comp *const comp, size_t *const max_cid)
Get the maximal CID value the compressor uses.
Definition: rohc_comp.c:1693
rohc_status_t ROHC_EXPORT rohc_comp_get_segment2(struct rohc_comp *const comp, struct rohc_buf *const segment)
Get the next ROHC segment if any.
Definition: rohc_comp.c:840
rohc_comp_state_t context_state
Definition: rohc_comp.h:148
rohc_mode_t context_mode
Definition: rohc_comp.h:146
size_t contexts_nr
Definition: rohc_comp.h:206
struct rohc_comp *ROHC_EXPORT rohc_comp_new2(const rohc_cid_type_t cid_type, const rohc_cid_t max_cid, const rohc_comp_random_cb_t rand_cb, void *const rand_priv)
Create a new ROHC compressor.
Definition: rohc_comp.c:231
unsigned long packets_nr
Definition: rohc_comp.h:208
bool is_context_init
Definition: rohc_comp.h:144
void(* rohc_trace_callback2_t)(void *const priv_ctxt, const rohc_trace_level_t level, const rohc_trace_entity_t entity, const int profile, const char *const format,...)
The function prototype for the trace callback.
Definition: rohc_traces.h:118
unsigned long total_last_comp_size
Definition: rohc_comp.h:160
unsigned long header_last_comp_size
Definition: rohc_comp.h:162
bool ROHC_EXPORT rohc_comp_set_periodic_refreshes(struct rohc_comp *const comp, const size_t ir_timeout, const size_t fo_timeout)
Set the timeout values for IR and FO periodic refreshes.
Definition: rohc_comp.c:1079
bool ROHC_EXPORT rohc_comp_get_last_packet_info2(const struct rohc_comp *const comp, rohc_comp_last_packet_info2_t *const info)
Get some information about the last compressed packet.
Definition: rohc_comp.c:1999
void ROHC_EXPORT rohc_comp_free(struct rohc_comp *const comp)
Destroy the given ROHC compressor.
Definition: rohc_comp.c:373
Definition: rohc_comp.h:89
Definition: rohc_comp.h:95
Definition: rohc_comp.h:236
bool(* rohc_rtp_detection_callback_t)(const unsigned char *const ip, const unsigned char *const udp, const unsigned char *const payload, const unsigned int payload_size, void *const rtp_private)
The prototype of the RTP detection callback.
Definition: rohc_comp.h:263
bool ROHC_EXPORT rohc_comp_deliver_feedback2(struct rohc_comp *const comp, const struct rohc_buf feedback)
Deliver a feedback packet to the compressor.
Definition: rohc_comp.c:1892
unsigned long total_last_uncomp_size
Definition: rohc_comp.h:156
unsigned long uncomp_bytes_nr
Definition: rohc_comp.h:210
const char *ROHC_EXPORT rohc_comp_get_state_descr(const rohc_comp_state_t state)
Give a description for the given ROHC compression context state.
Definition: rohc_comp.c:2145
A network buffer for the ROHC library.
Definition: rohc_buf.h:104
bool ROHC_EXPORT rohc_comp_profile_enabled(const struct rohc_comp *const comp, const rohc_profile_t profile)
Is the given compression profile enabled for a compressor?
Definition: rohc_comp.c:1257
bool ROHC_EXPORT rohc_comp_disable_profiles(struct rohc_comp *const comp,...)
Disable several compression profiles for a compressor.
Definition: rohc_comp.c:1519
Definition: rohc_comp.h:230
rohc_comp_features_t
The different features of the ROHC compressor.
Definition: rohc_comp.h:227
rohc_comp_state_t
The different ROHC compressor states.
Definition: rohc_comp.h:86
unsigned short version_minor
Definition: rohc_comp.h:204
Definition: rohc_comp.h:93
bool ROHC_EXPORT rohc_comp_enable_profile(struct rohc_comp *const comp, const rohc_profile_t profile)
Enable a compression profile for a compressor.
Definition: rohc_comp.c:1325
bool ROHC_EXPORT rohc_comp_enable_profiles(struct rohc_comp *const comp,...)
Enable several compression profiles for a compressor.
Definition: rohc_comp.c:1461
size_t list_trans_nr
Definition: rohc_comp_internals.h:205
void * rtp_private
Definition: rohc_comp_internals.h:166
#define ROHC_EXPORT
Definition: rohc_comp.h:56
unsigned long header_last_uncomp_size
Definition: rohc_comp.h:158
Definition: rohc_comp.h:234
Definition: rohc_comp.h:91
Some information about the last compressed packet.
Definition: rohc_comp.h:135
bool ROHC_EXPORT rohc_comp_set_rtp_detection_cb(struct rohc_comp *const comp, rohc_rtp_detection_callback_t callback, void *const rtp_private)
Set the RTP detection callback function.
Definition: rohc_comp.c:1220
rohc_status_t ROHC_EXPORT rohc_compress4(struct rohc_comp *const comp, const struct rohc_buf uncomp_packet, struct rohc_buf *const rohc_packet)
Compress the given uncompressed packet into a ROHC packet.
Definition: rohc_comp.c:528
rohc_profile_t
The different ROHC compression/decompression profiles.
Definition: rohc.h:212
rohc_packet_t
The different types of ROHC packets.
Definition: rohc_packets.h:49
bool ROHC_EXPORT rohc_comp_set_list_trans_nr(struct rohc_comp *const comp, const size_t list_trans_nr)
Set the number of uncompressed transmissions for list compression.
Definition: rohc_comp.c:1138
size_t mrru
Definition: rohc_comp_internals.h:201
unsigned int context_id
Definition: rohc_comp.h:142
unsigned short version_major
Definition: rohc_comp.h:138
bool ROHC_EXPORT rohc_comp_get_mrru(const struct rohc_comp *const comp, size_t *const mrru)
Get the Maximum Reconstructed Reception Unit (MRRU).
Definition: rohc_comp.c:1664
int profile_id
Definition: rohc_comp.h:152
unsigned long comp_bytes_nr
Definition: rohc_comp.h:212