mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
2a88d989cb
--HG-- rename : media/libtheora/lib/dec/apiwrapper.c => media/libtheora/lib/apiwrapper.c rename : media/libtheora/lib/dec/apiwrapper.h => media/libtheora/lib/apiwrapper.h rename : media/libtheora/lib/dec/bitpack.c => media/libtheora/lib/bitpack.c rename : media/libtheora/lib/dec/bitpack.h => media/libtheora/lib/bitpack.h rename : media/libtheora/lib/dec/dct.h => media/libtheora/lib/dct.h rename : media/libtheora/lib/dec/decapiwrapper.c => media/libtheora/lib/decapiwrapper.c rename : media/libtheora/lib/dec/decinfo.c => media/libtheora/lib/decinfo.c rename : media/libtheora/lib/dec/decint.h => media/libtheora/lib/decint.h rename : media/libtheora/lib/dec/decode.c => media/libtheora/lib/decode.c rename : media/libtheora/lib/dec/dequant.c => media/libtheora/lib/dequant.c rename : media/libtheora/lib/dec/dequant.h => media/libtheora/lib/dequant.h rename : media/libtheora/lib/dec/fragment.c => media/libtheora/lib/fragment.c rename : media/libtheora/lib/dec/huffdec.c => media/libtheora/lib/huffdec.c rename : media/libtheora/lib/dec/huffdec.h => media/libtheora/lib/huffdec.h rename : media/libtheora/lib/dec/huffman.h => media/libtheora/lib/huffman.h rename : media/libtheora/lib/dec/idct.c => media/libtheora/lib/idct.c rename : media/libtheora/lib/dec/info.c => media/libtheora/lib/info.c rename : media/libtheora/lib/dec/internal.c => media/libtheora/lib/internal.c rename : media/libtheora/lib/dec/ocintrin.h => media/libtheora/lib/ocintrin.h rename : media/libtheora/lib/dec/quant.c => media/libtheora/lib/quant.c rename : media/libtheora/lib/dec/quant.h => media/libtheora/lib/quant.h rename : media/libtheora/lib/dec/state.c => media/libtheora/lib/state.c rename : media/libtheora/lib/dec/x86/mmxfrag.c => media/libtheora/lib/x86/mmxfrag.c rename : media/libtheora/lib/dec/x86/mmxidct.c => media/libtheora/lib/x86/mmxidct.c rename : media/libtheora/lib/dec/x86/mmxstate.c => media/libtheora/lib/x86/mmxstate.c rename : media/libtheora/lib/dec/x86/x86int.h => media/libtheora/lib/x86/x86int.h rename : media/libtheora/lib/dec/x86/x86state.c => media/libtheora/lib/x86/x86state.c rename : media/libtheora/lib/dec/x86_vc/mmxfrag.c => media/libtheora/lib/x86_vc/mmxfrag.c rename : media/libtheora/lib/dec/x86_vc/mmxidct.c => media/libtheora/lib/x86_vc/mmxidct.c rename : media/libtheora/lib/dec/x86_vc/mmxstate.c => media/libtheora/lib/x86_vc/mmxstate.c rename : media/libtheora/lib/dec/x86_vc/x86int.h => media/libtheora/lib/x86_vc/x86int.h rename : media/libtheora/lib/dec/x86_vc/x86state.c => media/libtheora/lib/x86_vc/x86state.c
60 lines
2.2 KiB
C
60 lines
2.2 KiB
C
/********************************************************************
|
|
* *
|
|
* THIS FILE IS PART OF THE OggTheora SOFTWARE CODEC SOURCE CODE. *
|
|
* USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
|
|
* GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
|
|
* IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
|
|
* *
|
|
* THE OggTheora SOURCE CODE IS (C) COPYRIGHT 1994-2009 *
|
|
* by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
|
|
* *
|
|
********************************************************************
|
|
|
|
function: packing variable sized words into an octet stream
|
|
last mod: $Id: bitwise.c 7675 2004-09-01 00:34:39Z xiphmont $
|
|
|
|
********************************************************************/
|
|
#if !defined(_bitpack_H)
|
|
# define _bitpack_H (1)
|
|
# include <limits.h>
|
|
|
|
|
|
|
|
typedef unsigned long oc_pb_window;
|
|
typedef struct oc_pack_buf oc_pack_buf;
|
|
|
|
|
|
|
|
# define OC_PB_WINDOW_SIZE ((int)sizeof(oc_pb_window)*CHAR_BIT)
|
|
/*This is meant to be a large, positive constant that can still be efficiently
|
|
loaded as an immediate (on platforms like ARM, for example).
|
|
Even relatively modest values like 100 would work fine.*/
|
|
# define OC_LOTS_OF_BITS (0x40000000)
|
|
|
|
|
|
|
|
struct oc_pack_buf{
|
|
oc_pb_window window;
|
|
const unsigned char *ptr;
|
|
const unsigned char *stop;
|
|
int bits;
|
|
int eof;
|
|
};
|
|
|
|
void oc_pack_readinit(oc_pack_buf *_b,unsigned char *_buf,long _bytes);
|
|
int oc_pack_look1(oc_pack_buf *_b);
|
|
void oc_pack_adv1(oc_pack_buf *_b);
|
|
/*Here we assume 0<=_bits&&_bits<=32.*/
|
|
long oc_pack_read(oc_pack_buf *_b,int _bits);
|
|
int oc_pack_read1(oc_pack_buf *_b);
|
|
/* returns -1 for read beyond EOF, or the number of whole bytes available */
|
|
long oc_pack_bytes_left(oc_pack_buf *_b);
|
|
|
|
/*These two functions are implemented locally in huffdec.c*/
|
|
/*Read in bits without advancing the bitptr.
|
|
Here we assume 0<=_bits&&_bits<=32.*/
|
|
/*static int oc_pack_look(oc_pack_buf *_b,int _bits);*/
|
|
/*static void oc_pack_adv(oc_pack_buf *_b,int _bits);*/
|
|
|
|
#endif
|