138 lines
4.1 KiB
C
138 lines
4.1 KiB
C
/* 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 <ipcom_tags.h>
|
|
#include <ipcom_type.h>
|
|
#include <ipcom_list.h>
|
|
|
|
#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
|
|
****************************************************************************
|
|
*/
|
|
|