[svn] / branches / dev-api-3 / xvidcore / src / image / interpolate8x8.h Repository:
ViewVC logotype

Diff of /branches/dev-api-3/xvidcore/src/image/interpolate8x8.h

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

revision 392, Wed Sep 4 18:44:41 2002 UTC revision 530, Mon Sep 23 20:36:02 2002 UTC
# Line 89  Line 89 
89          }          }
90  }  }
91    
92    static __inline uint8_t *
93    interpolate8x8_switch2(uint8_t * const buffer,
94                                              const uint8_t * const refn,
95                                              const uint32_t x,
96                                              const uint32_t y,
97                                              const int32_t dx,
98                                              const int dy,
99                                              const uint32_t stride,
100                                              const uint32_t rounding)
101    {
102            int32_t ddx, ddy;
103    
104            switch (((dx & 1) << 1) + (dy & 1))     // ((dx%2)?2:0)+((dy%2)?1:0)
105            {
106            case 0:
107                    return (uint8_t *)refn + (int)((y + dy/2) * stride + x + dx/2);
108    
109            case 1:
110                    ddx = dx / 2;
111                    ddy = (dy - 1) / 2;
112                    interpolate8x8_halfpel_v(buffer,
113                                                                     refn + (int)((y + ddy) * stride + x + ddx), stride,
114                                                                     rounding);
115                    break;
116    
117            case 2:
118                    ddx = (dx - 1) / 2;
119                    ddy = dy / 2;
120                    interpolate8x8_halfpel_h(buffer,
121                                                                     refn + (int)((y + ddy) * stride + x + ddx), stride,
122                                                                     rounding);
123                    break;
124    
125            default:
126                    ddx = (dx - 1) / 2;
127                    ddy = (dy - 1) / 2;
128                    interpolate8x8_halfpel_hv(buffer,
129                                                                     refn + (int)((y + ddy) * stride + x + ddx), stride,
130                                                                      rounding);
131                    break;
132            }
133            return buffer;
134    }
135    
136    
137    
138  static __inline void interpolate8x8_quarterpel(uint8_t * const cur,  static void
139    interpolate8x8_quarterpel(uint8_t * const cur,
140                                       uint8_t * const refn,                                       uint8_t * const refn,
141                                       const uint32_t x, const uint32_t y,                                       const uint32_t x, const uint32_t y,
142                                           const int32_t dx,  const int dy,                                           const int32_t dx,  const int dy,

Legend:
Removed from v.392  
changed lines
  Added in v.530

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