#if !defined(_state_H)
#define _state_H …
# include "internal.h"
# include "huffman.h"
# include "quant.h"
oc_sb_map_quad;
oc_sb_map;
oc_mb_map_plane;
oc_mb_map;
oc_mv;
oc_sb_flags;
oc_border_info;
oc_fragment;
oc_fragment_plane;
oc_base_opt_vtable;
oc_base_opt_data;
oc_state_dispatch_vtable;
oc_theora_state;
# if defined(OC_X86_ASM)
# if defined(_MSC_VER)
# include "x86_vc/x86int.h"
# else
# include "x86/x86int.h"
# endif
# endif
# if defined(OC_ARM_ASM)
# include "arm/armint.h"
# endif
# if defined(OC_C64X_ASM)
# include "c64x/c64xint.h"
# endif
# if !defined(oc_state_accel_init)
#define oc_state_accel_init …
# endif
# if defined(OC_STATE_USE_VTABLE)
# if !defined(oc_frag_copy)
#define oc_frag_copy(_state,_dst,_src,_ystride) …
# endif
# if !defined(oc_frag_copy_list)
#define oc_frag_copy_list(_state,_dst_frame,_src_frame,_ystride, \
_fragis,_nfragis,_frag_buf_offs) …
# endif
# if !defined(oc_frag_recon_intra)
#define oc_frag_recon_intra(_state,_dst,_dst_ystride,_residue) …
# endif
# if !defined(oc_frag_recon_inter)
#define oc_frag_recon_inter(_state,_dst,_src,_ystride,_residue) …
# endif
# if !defined(oc_frag_recon_inter2)
#define oc_frag_recon_inter2(_state,_dst,_src1,_src2,_ystride,_residue) …
# endif
# if !defined(oc_idct8x8)
#define oc_idct8x8(_state,_y,_x,_last_zzi) …
# endif
# if !defined(oc_state_frag_recon)
#define oc_state_frag_recon(_state,_fragi, \
_pli,_dct_coeffs,_last_zzi,_dc_quant) …
# endif
# if !defined(oc_loop_filter_init)
#define oc_loop_filter_init(_state,_bv,_flimit) …
# endif
# if !defined(oc_state_loop_filter_frag_rows)
#define oc_state_loop_filter_frag_rows(_state, \
_bv,_refi,_pli,_fragy0,_fragy_end) …
# endif
# if !defined(oc_restore_fpu)
#define oc_restore_fpu(_state) …
# endif
# else
# if !defined(oc_frag_copy)
#define oc_frag_copy …
# endif
# if !defined(oc_frag_copy_list)
#define oc_frag_copy_list …
# endif
# if !defined(oc_frag_recon_intra)
#define oc_frag_recon_intra …
# endif
# if !defined(oc_frag_recon_inter)
#define oc_frag_recon_inter …
# endif
# if !defined(oc_frag_recon_inter2)
#define oc_frag_recon_inter2 …
# endif
# if !defined(oc_idct8x8)
#define oc_idct8x8 …
# endif
# if !defined(oc_state_frag_recon)
#define oc_state_frag_recon …
# endif
# if !defined(oc_loop_filter_init)
#define oc_loop_filter_init …
# endif
# if !defined(oc_state_loop_filter_frag_rows)
#define oc_state_loop_filter_frag_rows …
# endif
# if !defined(oc_restore_fpu)
#define oc_restore_fpu …
# endif
# endif
#define OC_INTRA_FRAME …
#define OC_INTER_FRAME …
#define OC_UNKWN_FRAME …
#define OC_UMV_PADDING …
#define OC_FRAME_GOLD …
#define OC_FRAME_PREV …
#define OC_FRAME_SELF …
#define OC_FRAME_NONE …
#define OC_FRAME_IO …
#define OC_FRAME_GOLD_ORIG …
#define OC_FRAME_PREV_ORIG …
#define OC_MODE_INVALID …
#define OC_MODE_INTER_NOMV …
#define OC_MODE_INTRA …
#define OC_MODE_INTER_MV …
#define OC_MODE_INTER_MV_LAST …
#define OC_MODE_INTER_MV_LAST2 …
#define OC_MODE_GOLDEN_NOMV …
#define OC_MODE_GOLDEN_MV …
#define OC_MODE_INTER_MV_FOUR …
#define OC_NMODES …
#define OC_FRAME_FOR_MODE(_x) …
#define OC_PACKET_INFO_HDR …
#define OC_PACKET_COMMENT_HDR …
#define OC_PACKET_SETUP_HDR …
#define OC_PACKET_DONE …
#define OC_MV(_x,_y) …
#define OC_MV_X(_mv) …
#define OC_MV_Y(_mv) …
#define OC_MV_ADD(_mv1,_mv2) …
#define OC_MV_SUB(_mv1,_mv2) …
struct oc_sb_flags{ … };
struct oc_border_info{ … };
struct oc_fragment{ … };
struct oc_fragment_plane{ … };
oc_state_loop_filter_frag_rows_func;
struct oc_base_opt_vtable{ … };
struct oc_base_opt_data{ … };
struct oc_theora_state{ … };
oc_set_chroma_mvs_func;
extern const oc_set_chroma_mvs_func OC_SET_CHROMA_MVS_TABLE[TH_PF_NFORMATS];
int oc_state_init(oc_theora_state *_state,const th_info *_info,int _nrefs);
void oc_state_clear(oc_theora_state *_state);
void oc_state_accel_init_c(oc_theora_state *_state);
void oc_state_borders_fill_rows(oc_theora_state *_state,int _refi,int _pli,
int _y0,int _yend);
void oc_state_borders_fill_caps(oc_theora_state *_state,int _refi,int _pli);
void oc_state_borders_fill(oc_theora_state *_state,int _refi);
void oc_state_fill_buffer_ptrs(oc_theora_state *_state,int _buf_idx,
th_ycbcr_buffer _img);
int oc_state_mbi_for_pos(oc_theora_state *_state,int _mbx,int _mby);
int oc_state_get_mv_offsets(const oc_theora_state *_state,int _offsets[2],
int _pli,oc_mv _mv);
void oc_loop_filter_init_c(signed char _bv[256],int _flimit);
void oc_state_loop_filter(oc_theora_state *_state,int _frame);
# if defined(OC_DUMP_IMAGES)
int oc_state_dump_frame(const oc_theora_state *_state,int _frame,
const char *_suf);
# endif
void oc_frag_copy_c(unsigned char *_dst,
const unsigned char *_src,int _src_ystride);
void oc_frag_copy_list_c(unsigned char *_dst_frame,
const unsigned char *_src_frame,int _ystride,
const ptrdiff_t *_fragis,ptrdiff_t _nfragis,const ptrdiff_t *_frag_buf_offs);
void oc_frag_recon_intra_c(unsigned char *_dst,int _dst_ystride,
const ogg_int16_t _residue[64]);
void oc_frag_recon_inter_c(unsigned char *_dst,
const unsigned char *_src,int _ystride,const ogg_int16_t _residue[64]);
void oc_frag_recon_inter2_c(unsigned char *_dst,const unsigned char *_src1,
const unsigned char *_src2,int _ystride,const ogg_int16_t _residue[64]);
void oc_idct8x8_c(ogg_int16_t _y[64],ogg_int16_t _x[64],int _last_zzi);
void oc_state_frag_recon_c(const oc_theora_state *_state,ptrdiff_t _fragi,
int _pli,ogg_int16_t _dct_coeffs[128],int _last_zzi,ogg_uint16_t _dc_quant);
void oc_state_loop_filter_frag_rows_c(const oc_theora_state *_state,
signed char _bv[256],int _refi,int _pli,int _fragy0,int _fragy_end);
void oc_restore_fpu_c(void);
oc_state_clear_func;
oc_state_control_func;
oc_state_granule_frame_func;
oc_state_granule_time_func;
struct oc_state_dispatch_vtable{ … };
#endif