1 /* 2 * Copyright (c) 2010 The WebM project authors. All Rights Reserved. 3 * 4 * Use of this source code is governed by a BSD-style license 5 * that can be found in the LICENSE file in the root of the source 6 * tree. An additional intellectual property rights grant can be found 7 * in the file PATENTS. All contributing project authors may 8 * be found in the AUTHORS file in the root of the source tree. 9 */ 10 11 12 /**************************************************************************** 13 * 14 * Module Title : postp.h 15 * 16 * Description : Post processor interface 17 * 18 ****************************************************************************/ 19 #ifndef VPXSCALE_H 20 #define VPXSCALE_H 21 22 23 // fwg 2004-10-14 24 typedef void (*vpxvertical_band_4_5_scale_lf)(unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width); 25 typedef void (*vpxlast_vertical_band_4_5_scale_lf)(unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width); 26 typedef void (*vpxvertical_band_3_5_scale_lf)(unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width); 27 typedef void (*vpxlast_vertical_band_3_5_scale_lf)(unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width); 28 typedef void (*vpxhorizontal_line_1_2_scale_lf)(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width); 29 typedef void (*vpxhorizontal_line_3_5_scale_lf)(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width); 30 typedef void (*vpxhorizontal_line_4_5_scale_lf)(const unsigned char *source, unsigned int source_width, unsigned char *dest, unsigned int dest_width); 31 typedef void (*vpxvertical_band_1_2_scale_lf)(unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width); 32 typedef void (*vpxlast_vertical_band_1_2_scale_lf)(unsigned char *dest, unsigned int dest_pitch, unsigned int dest_width); 33 34 35 typedef struct vpxglobal_scalling_ptrs_t 36 { 37 vpxvertical_band_4_5_scale_lf vpxvertical_band_4_5_scale_t; 38 vpxlast_vertical_band_4_5_scale_lf vpxlast_vertical_band_4_5_scale_t; 39 vpxvertical_band_3_5_scale_lf vpxvertical_band_3_5_scale_t; 40 vpxlast_vertical_band_3_5_scale_lf vpxlast_vertical_band_3_5_scale_t; 41 vpxhorizontal_line_1_2_scale_lf vpxhorizontal_line_1_2_scale_t; 42 vpxhorizontal_line_3_5_scale_lf vpxhorizontal_line_3_5_scale_t; 43 vpxhorizontal_line_4_5_scale_lf vpxhorizontal_line_4_5_scale_t; 44 vpxvertical_band_1_2_scale_lf vpxvertical_band_1_2_scale_t; 45 vpxlast_vertical_band_1_2_scale_lf vpxlast_vertical_band_1_2_scale_t; 46 } vpxglobal_scalling_ptrs; 47 48 extern struct vpxglobal_scalling_ptrs_t *g_scaling_ptrs; 49 50 /* 51 extern void (*vp8_vertical_band_4_5_scale)(unsigned char * dest,unsigned int dest_pitch,unsigned int dest_width); 52 extern void (*vp8_last_vertical_band_4_5_scale)(unsigned char * dest,unsigned int dest_pitch,unsigned int dest_width); 53 extern void (*vp8_vertical_band_3_5_scale)(unsigned char * dest,unsigned int dest_pitch,unsigned int dest_width); 54 extern void (*vp8_last_vertical_band_3_5_scale)(unsigned char * dest,unsigned int dest_pitch,unsigned int dest_width); 55 extern void (*vp8_horizontal_line_1_2_scale)(const unsigned char * source,unsigned int source_width,unsigned char * dest,unsigned int dest_width); 56 extern void (*vp8_horizontal_line_3_5_scale)(const unsigned char * source,unsigned int source_width,unsigned char * dest,unsigned int dest_width); 57 extern void (*vp8_horizontal_line_4_5_scale)(const unsigned char * source,unsigned int source_width,unsigned char * dest,unsigned int dest_width); 58 extern void (*vp8_vertical_band_1_2_scale)(unsigned char * dest,unsigned int dest_pitch,unsigned int dest_width); 59 extern void (*vp8_last_vertical_band_1_2_scale)(unsigned char * dest,unsigned int dest_pitch,unsigned int dest_width); 60 */ 61 62 #endif 63