/* iprohc_uncompressed.h - ROHC uncompressed profile head file */ /* * Copyright (c) 2008 Wind River Systems, Inc. * * The right to copy, distribute or otherwise make use of this software * may be licensed only pursuant to the terms of an applicable Wind River * license agreement. No license to Wind River intellectual property rights * is granted herein. All rights not licensed by Wind River are reserved * by Wind River. */ /* modification history -------------------- 01d,08may08,tlu Add debug functions to print a context 01c,07may08,tlu Modify function prototype of finding compression context 01b,01apr08,ggz Implementation of uncompressed profile 01a,28mar08,tlu Created. */ #ifndef IPROHC_UNCOMPRESSED_H #define IPROHC_UNCOMPRESSED_H /* **************************************************************************** * INCLUDE FILES **************************************************************************** */ #include #include #include #include "iprohc_config.h" #include "iprohc_constant.h" /* **************************************************************************** * DEFINES **************************************************************************** */ #define IPROHC_ENABLE_REENTRANT /* **************************************************************************** * Public TYPES **************************************************************************** */ #ifdef __cplusplus extern "C" { #endif /* **************************************************************************** * LOCAL TYPES **************************************************************************** */ typedef struct Iprohc_c_uncompressed_context { int normal_pkt_count; /* Can be used to send refresh IR packets */ int back_trans_count; /* Stat information */ int ir_pkt_count_stat; int normal_pkt_count_stat; } Iprohc_c_uncompressed_context; typedef struct Iprohc_d_uncompressed_context { /* Stat information */ int ir_pkt_count_stat; int normal_pkt_count_stat; } Iprohc_d_uncompressed_context; /* **************************************************************************** * GLOBAL FUNCTIONS **************************************************************************** */ /* Profile registration/de-registration functions */ IP_PUBLIC Ip_err iprohc_profile_uncompressed_register(void); IP_PUBLIC Ip_err iprohc_uncompressed_deregister(void); /* Profile specific compression functions */ IP_PUBLIC Ip_err iprohc_uncompressed_c_find_context(Iprohc_compressor *comp, Ipcom_pkt *pkt, Iprohc_c_context **context); IP_PUBLIC Iprohc_c_context * iprohc_uncompressed_c_create_context(Iprohc_compressor *comp, Ipcom_pkt *pkt); IP_PUBLIC Ip_err iprohc_uncompressed_c_del_context(Iprohc_c_context *context); IP_PUBLIC Ip_err iprohc_uncompressed_c_process_feedback(Iprohc_c_context *context, Ip_u8 *feedback, Ip_u8 size); IP_PUBLIC Ip_err iprohc_uncompressed_c_compress(Iprohc_c_context *context, Ipcom_pkt *pkt); IP_PUBLIC void iprohc_uncompressed_c_print_context(Iprohc_c_context *context); /* Profile specific decompression functions */ IP_PUBLIC Iprohc_d_context * iprohc_uncompressed_d_find_context(Iprohc_decompressor *decomp, Ipcom_pkt *pkt); IP_PUBLIC Iprohc_d_context * iprohc_uncompressed_d_create_context(Iprohc_decompressor *decomp, Ipcom_pkt *pkt); IP_PUBLIC Ip_err iprohc_uncompressed_d_del_context(Iprohc_d_context *context); IP_PUBLIC Ip_err iprohc_uncompressed_d_decompress(Iprohc_d_context *context, Ipcom_pkt *pkt); IP_PUBLIC void iprohc_uncompressed_d_print_context(Iprohc_d_context *context); #ifdef __cplusplus } #endif #endif /* #ifndef IPROHC_UNCOMPRESSED_H */ /* **************************************************************************** * END OF FILE **************************************************************************** */