Remove opaque pointer VP8D_PTR

Use an opaque struct rather than typecasting through VP8D_PTR, an int*.

Change-Id: Ia260b7d53d7e0950cfa1e00f4ecead1099bd3b87
This commit is contained in:
John Koleszar 2011-12-20 16:54:54 -08:00
parent bb1915274f
commit bf1a8073c3
4 changed files with 21 additions and 26 deletions

View File

@ -24,7 +24,8 @@ extern "C"
#include "vpx_ports/mem.h" #include "vpx_ports/mem.h"
#include "vpx/vpx_codec.h" #include "vpx/vpx_codec.h"
typedef void *VP8D_PTR; struct VP8D_COMP;
typedef struct typedef struct
{ {
int Width; int Width;
@ -49,19 +50,19 @@ extern "C"
void vp8dx_initialize(void); void vp8dx_initialize(void);
void vp8dx_set_setting(VP8D_PTR comp, VP8D_SETTING oxst, int x); void vp8dx_set_setting(struct VP8D_COMP* comp, VP8D_SETTING oxst, int x);
int vp8dx_get_setting(VP8D_PTR comp, VP8D_SETTING oxst); int vp8dx_get_setting(struct VP8D_COMP* comp, VP8D_SETTING oxst);
int vp8dx_receive_compressed_data(VP8D_PTR comp, unsigned long size, const unsigned char *dest, int64_t time_stamp); int vp8dx_receive_compressed_data(struct VP8D_COMP* comp, unsigned long size, const unsigned char *dest, int64_t time_stamp);
int vp8dx_get_raw_frame(VP8D_PTR comp, YV12_BUFFER_CONFIG *sd, int64_t *time_stamp, int64_t *time_end_stamp, vp8_ppflags_t *flags); int vp8dx_get_raw_frame(struct VP8D_COMP* comp, YV12_BUFFER_CONFIG *sd, int64_t *time_stamp, int64_t *time_end_stamp, vp8_ppflags_t *flags);
vpx_codec_err_t vp8dx_get_reference(VP8D_PTR comp, VP8_REFFRAME ref_frame_flag, YV12_BUFFER_CONFIG *sd); vpx_codec_err_t vp8dx_get_reference(struct VP8D_COMP* comp, VP8_REFFRAME ref_frame_flag, YV12_BUFFER_CONFIG *sd);
vpx_codec_err_t vp8dx_set_reference(VP8D_PTR comp, VP8_REFFRAME ref_frame_flag, YV12_BUFFER_CONFIG *sd); vpx_codec_err_t vp8dx_set_reference(struct VP8D_COMP* comp, VP8_REFFRAME ref_frame_flag, YV12_BUFFER_CONFIG *sd);
VP8D_PTR vp8dx_create_decompressor(VP8D_CONFIG *oxcf); struct VP8D_COMP* vp8dx_create_decompressor(VP8D_CONFIG *oxcf);
void vp8dx_remove_decompressor(VP8D_PTR comp); void vp8dx_remove_decompressor(struct VP8D_COMP* comp);
#ifdef __cplusplus #ifdef __cplusplus
} }

View File

@ -57,7 +57,7 @@ void vp8dx_initialize()
} }
VP8D_PTR vp8dx_create_decompressor(VP8D_CONFIG *oxcf) struct VP8D_COMP * vp8dx_create_decompressor(VP8D_CONFIG *oxcf)
{ {
VP8D_COMP *pbi = vpx_memalign(32, sizeof(VP8D_COMP)); VP8D_COMP *pbi = vpx_memalign(32, sizeof(VP8D_COMP));
@ -117,14 +117,12 @@ VP8D_PTR vp8dx_create_decompressor(VP8D_CONFIG *oxcf)
*/ */
pbi->independent_partitions = 0; pbi->independent_partitions = 0;
return (VP8D_PTR) pbi; return pbi;
} }
void vp8dx_remove_decompressor(VP8D_PTR ptr) void vp8dx_remove_decompressor(VP8D_COMP *pbi)
{ {
VP8D_COMP *pbi = (VP8D_COMP *) ptr;
if (!pbi) if (!pbi)
return; return;
@ -142,9 +140,8 @@ void vp8dx_remove_decompressor(VP8D_PTR ptr)
} }
vpx_codec_err_t vp8dx_get_reference(VP8D_PTR ptr, VP8_REFFRAME ref_frame_flag, YV12_BUFFER_CONFIG *sd) vpx_codec_err_t vp8dx_get_reference(VP8D_COMP *pbi, VP8_REFFRAME ref_frame_flag, YV12_BUFFER_CONFIG *sd)
{ {
VP8D_COMP *pbi = (VP8D_COMP *) ptr;
VP8_COMMON *cm = &pbi->common; VP8_COMMON *cm = &pbi->common;
int ref_fb_idx; int ref_fb_idx;
@ -174,9 +171,8 @@ vpx_codec_err_t vp8dx_get_reference(VP8D_PTR ptr, VP8_REFFRAME ref_frame_flag, Y
} }
vpx_codec_err_t vp8dx_set_reference(VP8D_PTR ptr, VP8_REFFRAME ref_frame_flag, YV12_BUFFER_CONFIG *sd) vpx_codec_err_t vp8dx_set_reference(VP8D_COMP *pbi, VP8_REFFRAME ref_frame_flag, YV12_BUFFER_CONFIG *sd)
{ {
VP8D_COMP *pbi = (VP8D_COMP *) ptr;
VP8_COMMON *cm = &pbi->common; VP8_COMMON *cm = &pbi->common;
int *ref_fb_ptr = NULL; int *ref_fb_ptr = NULL;
int free_fb; int free_fb;
@ -301,19 +297,18 @@ static int swap_frame_buffers (VP8_COMMON *cm)
return err; return err;
} }
int vp8dx_receive_compressed_data(VP8D_PTR ptr, unsigned long size, const unsigned char *source, int64_t time_stamp) int vp8dx_receive_compressed_data(VP8D_COMP *pbi, unsigned long size, const unsigned char *source, int64_t time_stamp)
{ {
#if HAVE_ARMV7 #if HAVE_ARMV7
int64_t dx_store_reg[8]; int64_t dx_store_reg[8];
#endif #endif
VP8D_COMP *pbi = (VP8D_COMP *) ptr;
VP8_COMMON *cm = &pbi->common; VP8_COMMON *cm = &pbi->common;
int retcode = 0; int retcode = 0;
/*if(pbi->ready_for_new_data == 0) /*if(pbi->ready_for_new_data == 0)
return -1;*/ return -1;*/
if (ptr == 0) if (pbi == 0)
{ {
return -1; return -1;
} }
@ -575,10 +570,9 @@ int vp8dx_receive_compressed_data(VP8D_PTR ptr, unsigned long size, const unsign
pbi->common.error.setjmp = 0; pbi->common.error.setjmp = 0;
return retcode; return retcode;
} }
int vp8dx_get_raw_frame(VP8D_PTR ptr, YV12_BUFFER_CONFIG *sd, int64_t *time_stamp, int64_t *time_end_stamp, vp8_ppflags_t *flags) int vp8dx_get_raw_frame(VP8D_COMP *pbi, YV12_BUFFER_CONFIG *sd, int64_t *time_stamp, int64_t *time_end_stamp, vp8_ppflags_t *flags)
{ {
int ret = -1; int ret = -1;
VP8D_COMP *pbi = (VP8D_COMP *) ptr;
if (pbi->ready_for_new_data == 1) if (pbi->ready_for_new_data == 1)
return ret; return ret;

View File

@ -44,7 +44,7 @@ typedef struct
} DATARATE; } DATARATE;
typedef struct VP8Decompressor typedef struct VP8D_COMP
{ {
DECLARE_ALIGNED(16, MACROBLOCKD, mb); DECLARE_ALIGNED(16, MACROBLOCKD, mb);

View File

@ -57,7 +57,7 @@ struct vpx_codec_alg_priv
vp8_stream_info_t si; vp8_stream_info_t si;
int defer_alloc; int defer_alloc;
int decoder_init; int decoder_init;
VP8D_PTR pbi; struct VP8D_COMP *pbi;
int postproc_cfg_set; int postproc_cfg_set;
vp8_postproc_cfg_t postproc_cfg; vp8_postproc_cfg_t postproc_cfg;
#if CONFIG_POSTPROC_VISUALIZER #if CONFIG_POSTPROC_VISUALIZER
@ -389,7 +389,7 @@ static vpx_codec_err_t vp8_decode(vpx_codec_alg_priv_t *ctx,
if (!res) if (!res)
{ {
VP8D_CONFIG oxcf; VP8D_CONFIG oxcf;
VP8D_PTR optr; struct VP8D_COMP* optr;
vp8dx_initialize(); vp8dx_initialize();