[svn] / trunk / xvidcore / src / motion / sad.h Repository:
ViewVC logotype

Diff of /trunk/xvidcore/src/motion/sad.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 118, Sat Apr 13 16:30:02 2002 UTC revision 499, Sat Sep 21 03:11:36 2002 UTC
# Line 1  Line 1 
1    /*****************************************************************************
2     *
3     *  XVID MPEG-4 VIDEO CODEC
4     *  - SAD Routines header -
5     *
6     *  Copyright(C) 2002 Michael Militzer
7     *
8     *  This program is an implementation of a part of one or more MPEG-4
9     *  Video tools as specified in ISO/IEC 14496-2 standard.  Those intending
10     *  to use this software module in hardware or software products are
11     *  advised that its use may infringe existing patents or copyrights, and
12     *  any such use would be at such party's own risk.  The original
13     *  developer of this software module and his/her company, and subsequent
14     *  editors and their companies, will have no liability for use of this
15     *  software or modifications or derivatives thereof.
16     *
17     *  This program is free software; you can redistribute it and/or modify
18     *  it under the terms of the GNU General Public License as published by
19     *  the Free Software Foundation; either version 2 of the License, or
20     *  (at your option) any later version.
21     *
22     *  This program is distributed in the hope that it will be useful,
23     *  but WITHOUT ANY WARRANTY; without even the implied warranty of
24     *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
25     *  GNU General Public License for more details.
26     *
27     *  You should have received a copy of the GNU General Public License
28     *  along with this program; if not, write to the Free Software
29     *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
30     *
31     *  Copyright(C) 2002 Michael Militzer
32     *  Copyright(C) 2002 Peter Ross <pross@xvid.org>
33     *
34     ****************************************************************************/
35    
36  #ifndef _ENCODER_SAD_H_  #ifndef _ENCODER_SAD_H_
37  #define _ENCODER_SAD_H_  #define _ENCODER_SAD_H_
38    
   
39  #include "../portab.h"  #include "../portab.h"
40    
41  typedef void (sadInitFunc)(void);  typedef void (sadInitFunc)(void);
# Line 20  Line 54 
54  sad16Func sad16_c;  sad16Func sad16_c;
55  sad16Func sad16_mmx;  sad16Func sad16_mmx;
56  sad16Func sad16_xmm;  sad16Func sad16_xmm;
57    sad16Func sad16_sse2;
58  sad16Func sad16_altivec;  sad16Func sad16_altivec;
59    sad16Func sad16_ia64;
60    
61    sad16Func mrsad16_c;
 typedef uint32_t (sad16biFunc)(const uint8_t * const cur,  
                                                  const uint8_t * const ref1,  
                                                  const uint8_t * const ref2,  
                                                  const uint32_t stride);  
 typedef sad16biFunc* sad16biFuncPtr;  
 extern sad16biFuncPtr sad16bi;  
 sad16biFunc sad16bi_c;  
 //sad16biFunc sad16bi_mmx;  
 //sad16biFunc sad16bi_xmm;  
62    
63    
64  typedef uint32_t (sad8Func)(const uint8_t * const cur,  typedef uint32_t (sad8Func)(const uint8_t * const cur,
# Line 43  Line 70 
70  sad8Func sad8_mmx;  sad8Func sad8_mmx;
71  sad8Func sad8_xmm;  sad8Func sad8_xmm;
72  sad8Func sad8_altivec;  sad8Func sad8_altivec;
73    sad8Func sad8_ia64;
74    
75    
76    typedef uint32_t(sad16biFunc) (const uint8_t * const cur,
77                                                               const uint8_t * const ref1,
78                                                               const uint8_t * const ref2,
79                                                               const uint32_t stride);
80    typedef sad16biFunc *sad16biFuncPtr;
81    extern sad16biFuncPtr sad16bi;
82    sad16biFunc sad16bi_c;
83    sad16biFunc sad16bi_ia64;
84    sad16biFunc sad16bi_mmx;
85    sad16biFunc sad16bi_xmm;
86    sad16biFunc sad16bi_3dn;
87    
88    
89    typedef uint32_t(sad8biFunc) (const uint8_t * const cur,
90                                                               const uint8_t * const ref1,
91                                                               const uint8_t * const ref2,
92                                                               const uint32_t stride);
93    typedef sad8biFunc *sad8biFuncPtr;
94    extern sad8biFuncPtr sad8bi;
95    sad8biFunc sad8bi_c;
96    sad8biFunc sad8bi_mmx;
97    sad8biFunc sad8bi_xmm;
98    sad8biFunc sad8bi_3dn;
99    
100    
101  typedef uint32_t (dev16Func)(const uint8_t * const cur,  typedef uint32_t (dev16Func)(const uint8_t * const cur,
# Line 52  Line 105 
105  dev16Func dev16_c;  dev16Func dev16_c;
106  dev16Func dev16_mmx;  dev16Func dev16_mmx;
107  dev16Func dev16_xmm;  dev16Func dev16_xmm;
108    dev16Func dev16_sse2;
109  dev16Func dev16_altivec;  dev16Func dev16_altivec;
110    dev16Func dev16_ia64;
111    
112  /* plain c */  /* plain c */
113  /*  /*

Legend:
Removed from v.118  
changed lines
  Added in v.499

No admin address has been configured
ViewVC Help
Powered by ViewVC 1.0.4