--- quant_h263.h 2003/02/15 15:22:19 1.10 +++ quant_h263.h 2003/08/13 11:43:59 1.10.2.3 @@ -1,9 +1,34 @@ +/***************************************************************************** + * + * XVID MPEG-4 VIDEO CODEC + * - H263 Quantization related header - + * + * Copyright(C) 2002 Michael Militzer + * + * This program is free software ; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation ; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY ; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program ; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: quant_h263.h,v 1.10.2.3 2003/08/13 11:43:59 edgomez Exp $ + * + ****************************************************************************/ + #ifndef _QUANT_H263_H_ #define _QUANT_H263_H_ #include "../portab.h" -// intra +/* intra */ typedef void (quanth263_intraFunc) (int16_t * coeff, const int16_t * data, const uint32_t quant, @@ -15,19 +40,31 @@ extern quanth263_intraFuncPtr dequant_intra; quanth263_intraFunc quant_intra_c; + +#ifdef ARCH_IS_IA32 quanth263_intraFunc quant_intra_mmx; quanth263_intraFunc quant_intra_3dne; quanth263_intraFunc quant_intra_sse2; +#endif + +#ifdef ARCH_IS_IA64 quanth263_intraFunc quant_intra_ia64; +#endif quanth263_intraFunc dequant_intra_c; + +#ifdef ARCH_IS_IA32 quanth263_intraFunc dequant_intra_mmx; quanth263_intraFunc dequant_intra_xmm; quanth263_intraFunc dequant_intra_3dne; quanth263_intraFunc dequant_intra_sse2; +#endif + +#ifdef ARCH_IS_IA64 quanth263_intraFunc dequant_intra_ia64; +#endif -// inter_quant +/* inter_quant */ typedef uint32_t(quanth263_interFunc) (int16_t * coeff, const int16_t * data, const uint32_t quant); @@ -37,12 +74,18 @@ extern quanth263_interFuncPtr quant_inter; quanth263_interFunc quant_inter_c; + +#ifdef ARCH_IS_IA32 quanth263_interFunc quant_inter_mmx; quanth263_interFunc quant_inter_3dne; quanth263_interFunc quant_inter_sse2; +#endif + +#ifdef ARCH_IS_IA64 quanth263_interFunc quant_inter_ia64; +#endif -//inter_dequant +/* inter_dequant */ typedef void (dequanth263_interFunc) (int16_t * coeff, const int16_t * data, const uint32_t quant); @@ -52,10 +95,16 @@ extern dequanth263_interFuncPtr dequant_inter; dequanth263_interFunc dequant_inter_c; + +#ifdef ARCH_IS_IA32 dequanth263_interFunc dequant_inter_mmx; dequanth263_interFunc dequant_inter_xmm; dequanth263_interFunc dequant_inter_3dne; dequanth263_interFunc dequant_inter_sse2; +#endif + +#ifdef ARCH_IS_IA64 dequanth263_interFunc dequant_inter_ia64; +#endif #endif /* _QUANT_H263_H_ */