| ROHC compression/decompression library
   
    | 
The generic compression context. More...
#include <c_generic.h>

| Data Fields | |
| uint32_t | sn | 
| The Sequence Number (SN), may be 16-bit or 32-bit long. | |
| struct c_wlsb * | sn_window | 
| A window used to encode the SN. | |
| int | ir_count | 
| The number of packets sent while in Initialization & Refresh (IR) state. | |
| int | fo_count | 
| The number of packets sent while in First Order (FO) state. | |
| int | so_count | 
| The number of packets sent while in Second Order (SO) state. | |
| int | go_back_fo_count | 
| The number of packet sent while in SO state, used for the periodic refreshes of the context. | |
| int | go_back_ir_count | 
| The number of packet sent while in FO or SO state, used for the periodic refreshes of the context. | |
| struct ip_header_info | ip_flags | 
| Information about the outer IP header. | |
| struct ip_header_info | ip2_flags | 
| Information about the inner IP header. | |
| int | is_ip2_initialized | 
| Whether the ip2_flags object is initialized or not. | |
| struct generic_tmp_vars | tmp | 
| Temporary variables that are used during one single compression of packet. | |
| unsigned int | next_header_proto | 
| The protocol number registered by IANA for the next header protocol. | |
| unsigned int | next_header_len | 
| The length of the next header. | |
| int(* | encode_uncomp_fields )(struct c_context *const context, const struct ip_packet *const ip, const struct ip_packet *const ip2, const unsigned char *const next_header) | 
| void(* | decide_state )(struct c_context *const context) | 
| The handler used to decide the state that should be used for the next packet. | |
| rohc_packet_t(* | decide_FO_packet )(const struct c_context *context) | 
| The handler used to decide which packet to send in FO state. | |
| rohc_packet_t(* | decide_SO_packet )(const struct c_context *context) | 
| The handler used to decide which packet to send in SO state. | |
| rohc_ext_t(* | decide_extension )(const struct c_context *context) | 
| void(* | init_at_IR )(const struct c_context *context, const unsigned char *next_header) | 
| The handler used to initialize some data just before the IR packet build. | |
| uint32_t(* | get_next_sn )(const struct c_context *context, const struct ip_packet *outer_ip, const struct ip_packet *inner_ip) | 
| int(* | code_static_part )(const struct c_context *context, const unsigned char *next_header, unsigned char *const dest, int counter) | 
| The handler used to add the static part of the next header to the ROHC packet. | |
| int(* | code_dynamic_part )(const struct c_context *context, const unsigned char *next_header, unsigned char *const dest, int counter) | 
| The handler used to add the dynamic part of the next header to the ROHC pachet. | |
| int(* | code_ir_remainder )(const struct c_context *context, unsigned char *const dest, int counter) | 
| The handler used to add the IR/IR-DYN remainder header to the ROHC pachet. | |
| int(* | code_UO_packet_head )(const struct c_context *context, const unsigned char *next_header, unsigned char *const dest, int counter, int *const first_position) | 
| The handler used to add an additional header in the head of the UO-0, UO-1 and UO-2 packets. | |
| int(* | code_uo_remainder )(const struct c_context *context, const unsigned char *next_header, unsigned char *const dest, int counter) | 
| The handler used to add an additional header in the tail of the UO-0, UO-1 and UO-2 packets. | |
| unsigned int(* | compute_crc_static )(const unsigned char *const ip, const unsigned char *const ip2, const unsigned char *const next_header, const rohc_crc_type_t crc_type, const unsigned int init_val, const unsigned char *const crc_table) | 
| The handler used to compute the CRC-STATIC value. | |
| unsigned int(* | compute_crc_dynamic )(const unsigned char *const ip, const unsigned char *const ip2, const unsigned char *const next_header, const rohc_crc_type_t crc_type, const unsigned int init_val, const unsigned char *const crc_table) | 
| The handler used to compute the CRC-DYNAMIC value. | |
| void * | specific | 
| Profile-specific data. | |
The generic compression context.
The object defines the generic context that manages IP(/nextheader) and IP/IP(/nextheader) packets. nextheader is managed by the profile-specific part of the context.
| int(* c_generic_context::code_dynamic_part)(const struct c_context *context, const unsigned char *next_header, unsigned char *const dest, int counter) | 
The handler used to add the dynamic part of the next header to the ROHC pachet.
Referenced by c_generic_create(), c_rtp_create(), c_udp_create(), c_udp_lite_create(), code_IR_DYN_packet(), and code_IR_packet().
| int(* c_generic_context::code_ir_remainder)(const struct c_context *context, unsigned char *const dest, int counter) | 
The handler used to add the IR/IR-DYN remainder header to the ROHC pachet.
Referenced by c_rtp_create(), c_udp_create(), c_udp_lite_create(), code_IR_DYN_packet(), and code_IR_packet().
| int(* c_generic_context::code_static_part)(const struct c_context *context, const unsigned char *next_header, unsigned char *const dest, int counter) | 
The handler used to add the static part of the next header to the ROHC packet.
Referenced by c_generic_create(), c_rtp_create(), c_udp_create(), c_udp_lite_create(), and code_IR_packet().
| int(* c_generic_context::code_UO_packet_head)(const struct c_context *context, const unsigned char *next_header, unsigned char *const dest, int counter, int *const first_position) | 
The handler used to add an additional header in the head of the UO-0, UO-1 and UO-2 packets.
Referenced by c_generic_create(), c_rtp_create(), c_udp_create(), c_udp_lite_create(), code_UO0_packet(), code_UO1_packet(), and code_UO2_packet().
| int(* c_generic_context::code_uo_remainder)(const struct c_context *context, const unsigned char *next_header, unsigned char *const dest, int counter) | 
The handler used to add an additional header in the tail of the UO-0, UO-1 and UO-2 packets.
Referenced by c_generic_create(), c_rtp_create(), c_udp_create(), c_udp_lite_create(), and code_uo_remainder().
| unsigned int(* c_generic_context::compute_crc_dynamic)(const unsigned char *const ip, const unsigned char *const ip2, const unsigned char *const next_header, const rohc_crc_type_t crc_type, const unsigned int init_val, const unsigned char *const crc_table) | 
The handler used to compute the CRC-DYNAMIC value.
Referenced by c_generic_create(), c_rtp_create(), c_udp_create(), c_udp_lite_create(), code_UO0_packet(), code_UO1_packet(), and code_UO2_packet().
| unsigned int(* c_generic_context::compute_crc_static)(const unsigned char *const ip, const unsigned char *const ip2, const unsigned char *const next_header, const rohc_crc_type_t crc_type, const unsigned int init_val, const unsigned char *const crc_table) | 
The handler used to compute the CRC-STATIC value.
Referenced by c_generic_create(), c_rtp_create(), c_udp_create(), c_udp_lite_create(), code_UO0_packet(), code_UO1_packet(), and code_UO2_packet().
| rohc_ext_t(* c_generic_context::decide_extension)(const struct c_context *context) | 
The handler used to decide which extension to send
Referenced by c_generic_create(), c_rtp_create(), c_udp_create(), c_udp_lite_create(), and code_UO2_packet().
| rohc_packet_t(* c_generic_context::decide_FO_packet)(const struct c_context *context) | 
The handler used to decide which packet to send in FO state.
Referenced by c_generic_create(), c_rtp_create(), c_udp_create(), and c_udp_lite_create().
| rohc_packet_t(* c_generic_context::decide_SO_packet)(const struct c_context *context) | 
The handler used to decide which packet to send in SO state.
Referenced by c_generic_create(), c_rtp_create(), c_udp_create(), and c_udp_lite_create().
| void(* c_generic_context::decide_state)(struct c_context *const context) | 
The handler used to decide the state that should be used for the next packet.
Referenced by c_generic_create(), c_generic_encode(), c_rtp_create(), c_udp_create(), and c_udp_lite_create().
| int(* c_generic_context::encode_uncomp_fields)(struct c_context *const context, const struct ip_packet *const ip, const struct ip_packet *const ip2, const unsigned char *const next_header) | 
The handler for encoding profile-specific uncompressed header fields
Referenced by c_generic_encode(), and c_rtp_create().
The number of packets sent while in First Order (FO) state.
Referenced by c_generic_create(), change_state(), changed_dynamic_one_hdr(), changed_static_one_hdr(), and decide_state().
| uint32_t(* c_generic_context::get_next_sn)(const struct c_context *context, const struct ip_packet *outer_ip, const struct ip_packet *inner_ip) | 
Determine the next SN value
Referenced by c_generic_create(), c_generic_encode(), c_rtp_create(), c_udp_create(), and c_udp_lite_create().
The number of packet sent while in SO state, used for the periodic refreshes of the context.
Referenced by c_generic_create(), and periodic_down_transition().
The number of packet sent while in FO or SO state, used for the periodic refreshes of the context.
Referenced by c_generic_create(), and periodic_down_transition().
| void(* c_generic_context::init_at_IR)(const struct c_context *context, const unsigned char *next_header) | 
The handler used to initialize some data just before the IR packet build.
Referenced by c_generic_create(), c_rtp_create(), c_udp_create(), c_udp_lite_create(), code_IR_DYN_packet(), and code_IR_packet().
Information about the inner IP header.
Referenced by c_generic_destroy(), c_generic_encode(), c_generic_feedback(), c_ip_check_context(), c_ip_decide_SO_packet(), c_udp_check_context(), c_udp_lite_check_context(), changed_dynamic_both_hdr(), changed_static_both_hdr(), code_EXT2_packet(), code_EXT3_packet(), code_IR_DYN_packet(), code_IR_packet(), code_uo_remainder(), code_UOR2_RTP_bytes(), code_UOR2_TS_bytes(), and rohc_get_ipid_bits().
Information about the outer IP header.
Referenced by c_generic_create(), c_generic_destroy(), c_generic_encode(), c_generic_feedback(), c_ip_check_context(), c_ip_decide_SO_packet(), c_udp_check_context(), c_udp_lite_check_context(), changed_dynamic_both_hdr(), changed_static_both_hdr(), code_EXT2_packet(), code_EXT3_packet(), code_IR_DYN_packet(), code_IR_packet(), code_UO1_packet(), code_uo_remainder(), code_UOR2_RTP_bytes(), code_UOR2_TS_bytes(), and rohc_get_ipid_bits().
The number of packets sent while in Initialization & Refresh (IR) state.
Referenced by c_generic_create(), change_state(), decide_state(), and udp_lite_init_cc().
Whether the ip2_flags object is initialized or not.
Referenced by c_generic_create(), c_generic_destroy(), c_generic_encode(), c_generic_feedback(), c_ip_check_context(), c_udp_check_context(), c_udp_lite_check_context(), and code_EXT2_packet().
| unsigned int c_generic_context::next_header_len | 
The length of the next header.
Referenced by c_generic_create(), c_generic_encode(), c_rtp_create(), c_udp_create(), and c_udp_lite_create().
| unsigned int c_generic_context::next_header_proto | 
The protocol number registered by IANA for the next header protocol.
Referenced by c_generic_create(), c_ip_check_context(), c_rtp_create(), c_udp_create(), and c_udp_lite_create().
| uint32_t c_generic_context::sn | 
The Sequence Number (SN), may be 16-bit or 32-bit long.
Referenced by c_generic_encode(), c_ip_code_ir_remainder(), c_ip_get_next_sn(), c_rtp_create(), c_udp_create(), c_udp_lite_create(), code_EXT0_packet(), code_EXT1_packet(), code_EXT2_packet(), code_EXT3_packet(), code_UO0_packet(), code_UO1_packet(), code_UOR2_bytes(), code_UOR2_ID_bytes(), code_UOR2_RTP_bytes(), and code_UOR2_TS_bytes().
| struct c_wlsb* c_generic_context::sn_window | 
A window used to encode the SN.
Referenced by c_generic_create(), c_generic_destroy(), and c_generic_feedback().
The number of packets sent while in Second Order (SO) state.
Referenced by c_generic_create(), and change_state().
Profile-specific data.
Referenced by c_generic_create(), c_generic_destroy(), c_rtp_check_context(), c_rtp_create(), c_rtp_destroy(), c_rtp_encode(), c_udp_check_context(), c_udp_create(), c_udp_encode(), c_udp_lite_check_context(), c_udp_lite_create(), c_udp_lite_encode(), code_EXT0_packet(), code_EXT1_packet(), code_EXT2_packet(), code_EXT3_packet(), code_UO1_packet(), code_UOR2_ID_bytes(), code_UOR2_RTP_bytes(), code_UOR2_TS_bytes(), decide_extension(), rtp_changed_rtp_dynamic(), rtp_code_dynamic_rtp_part(), rtp_decide_state(), rtp_header_flags_and_fields(), udp_changed_udp_dynamic(), udp_code_dynamic_udp_part(), udp_decide_state(), udp_lite_build_cce_packet(), udp_lite_code_uo_remainder(), and udp_lite_init_cc().
Temporary variables that are used during one single compression of packet.
Referenced by c_generic_create(), c_generic_encode(), c_ip_decide_FO_packet(), c_ip_decide_SO_packet(), c_rtp_encode(), c_udp_encode(), c_udp_lite_encode(), changed_dynamic_both_hdr(), changed_static_both_hdr(), code_EXT0_packet(), code_EXT1_packet(), code_EXT2_packet(), code_EXT3_packet(), code_IR_DYN_packet(), code_IR_packet(), code_packet(), code_UO0_packet(), code_UO1_packet(), code_UO2_packet(), code_uo_remainder(), code_UOR2_bytes(), code_UOR2_ID_bytes(), code_UOR2_RTP_bytes(), code_UOR2_TS_bytes(), decide_extension(), decide_state(), and rohc_get_ipid_bits().
 1.7.6.1
 1.7.6.1