37 #include <rohc/rohc.h> 38 #include <rohc/rohc_profiles.h> 39 #include <rohc/rohc_packets.h> 40 #include <rohc/rohc_traces.h> 41 #include <rohc/rohc_time.h> 42 #include <rohc/rohc_buf.h> 51 # define ROHC_EXPORT __declspec(dllexport) 265 const unsigned char *
const udp,
266 const unsigned char *
const payload,
267 const unsigned int payload_size,
269 __attribute__((warn_unused_result));
290 void *
const user_context)
291 __attribute__((warn_unused_result));
301 void *
const rand_priv)
302 __attribute__((warn_unused_result));
308 void *
const priv_ctxt)
309 __attribute__((warn_unused_result));
312 const struct rohc_buf uncomp_packet,
314 __attribute__((warn_unused_result));
318 const size_t min_pkt_len)
319 __attribute__((warn_unused_result));
323 __attribute__((warn_unused_result));
326 __attribute__((warn_unused_result));
335 __attribute__((warn_unused_result));
339 __attribute__((warn_unused_result));
342 __attribute__((warn_unused_result));
346 __attribute__((warn_unused_result));
349 __attribute__((warn_unused_result));
353 __attribute__((warn_unused_result));
356 __attribute__((warn_unused_result));
359 size_t *const max_cid)
360 __attribute__((warn_unused_result));
364 __attribute__((warn_unused_result));
369 __attribute__((warn_unused_result));
373 __attribute__((warn_unused_result));
377 __attribute__((warn_unused_result));
387 __attribute__((warn_unused_result));
391 __attribute__((warn_unused_result));
394 const
size_t ir_timeout,
395 const
size_t fo_timeout)
396 __attribute__((warn_unused_result));
399 const uint64_t ir_timeout,
400 const uint64_t fo_timeout)
401 __attribute__((warn_unused_result));
405 __attribute__((warn_unused_result));
414 __attribute__((warn_unused_result));
418 __attribute__((warn_unused_result));
421 __attribute__((warn_unused_result, const));
Definition: rohc_comp.h:231
rohc_reordering_offset_t reorder_ratio
Definition: rohc_comp_internals.h:204
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:2005
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:289
size_t rohc_cid_t
Definition: rohc.h:195
rohc_packet_t packet_type
Definition: rohc_comp.h:153
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:1079
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:2041
rohc_comp_features_t features
Definition: rohc_comp_internals.h:135
bool context_used
Definition: rohc_comp.h:149
rohc_reordering_offset_t
The different values of reordering offset.
Definition: rohc.h:203
bool ROHC_EXPORT rohc_comp_set_periodic_refreshes_time(struct rohc_comp *const comp, const uint64_t ir_timeout, const uint64_t fo_timeout)
Set the timeouts in ms for IR and FO periodic refreshes.
Definition: rohc_comp.c:1299
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:1849
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:2366
unsigned short version_minor
Definition: rohc_comp.h:139
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:451
unsigned short version_major
Definition: rohc_comp.h:201
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:1649
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:1129
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:129
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:198
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:1976
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:955
rohc_comp_state_t context_state
Definition: rohc_comp.h:147
rohc_mode_t context_mode
Definition: rohc_comp.h:145
size_t contexts_nr
Definition: rohc_comp.h:205
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:248
unsigned long packets_nr
Definition: rohc_comp.h:207
bool is_context_init
Definition: rohc_comp.h:143
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:159
unsigned long header_last_comp_size
Definition: rohc_comp.h:161
bool ROHC_EXPORT rohc_comp_set_reorder_ratio(struct rohc_comp *const comp, const rohc_reordering_offset_t reorder_ratio)
Set the reordering ratio for the W-LSB encoding scheme.
Definition: rohc_comp.c:1179
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 timeouts in packets for IR and FO periodic refreshes.
Definition: rohc_comp.c:1239
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:2283
void ROHC_EXPORT rohc_comp_free(struct rohc_comp *const comp)
Destroy the given ROHC compressor.
Definition: rohc_comp.c:392
Definition: rohc_comp.h:86
Definition: rohc_comp.h:92
Definition: rohc_comp.h:235
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:264
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:2176
Definition: rohc_comp.h:237
unsigned long total_last_uncomp_size
Definition: rohc_comp.h:155
unsigned long uncomp_bytes_nr
Definition: rohc_comp.h:209
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:2429
rohc_status_t ROHC_EXPORT rohc_comp_pad(struct rohc_comp *const comp, struct rohc_buf *const rohc_packet, const size_t min_pkt_len)
Pad the given ROHC compressed packet.
Definition: rohc_comp.c:832
A network buffer for the ROHC library.
Definition: rohc_buf.h:102
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:1511
bool ROHC_EXPORT rohc_comp_disable_profiles(struct rohc_comp *const comp,...)
Disable several compression profiles for a compressor.
Definition: rohc_comp.c:1773
Definition: rohc_comp.h:229
rohc_comp_features_t
The different features of the ROHC compressor.
Definition: rohc_comp.h:226
rohc_comp_state_t
The different ROHC compressor states.
Definition: rohc_comp.h:83
unsigned short version_minor
Definition: rohc_comp.h:203
Definition: rohc_comp.h:90
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:1574
bool ROHC_EXPORT rohc_comp_enable_profiles(struct rohc_comp *const comp,...)
Enable several compression profiles for a compressor.
Definition: rohc_comp.c:1715
size_t list_trans_nr
Definition: rohc_comp_internals.h:222
void * rtp_private
Definition: rohc_comp_internals.h:174
#define ROHC_EXPORT
Definition: rohc_comp.h:53
Definition: rohc_comp.h:94
unsigned long header_last_uncomp_size
Definition: rohc_comp.h:157
Definition: rohc_comp.h:233
Definition: rohc_comp.h:88
Some information about the last compressed packet.
Definition: rohc_comp.h:134
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:1441
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:547
rohc_profile_t
The different ROHC compression/decompression profiles.
Definition: rohc_profiles.h:70
rohc_packet_t
The different types of ROHC packets.
Definition: rohc_packets.h:55
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:1359
size_t mrru
Definition: rohc_comp_internals.h:218
unsigned int context_id
Definition: rohc_comp.h:141
unsigned short version_major
Definition: rohc_comp.h:137
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:1947
int profile_id
Definition: rohc_comp.h:151
unsigned long comp_bytes_nr
Definition: rohc_comp.h:211