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 : preproc.h 15 * 16 * Description : simple preprocessor 17 * 18 ****************************************************************************/ 19 20 #ifndef __INC_PREPROC_H 21 #define __INC_PREPROC_H 22 23 /**************************************************************************** 24 * Types 25 ****************************************************************************/ 26 27 typedef struct 28 { 29 unsigned char *frame_buffer; 30 int frame; 31 unsigned int *fixed_divide; 32 33 unsigned char *frame_buffer_alloc; 34 unsigned int *fixed_divide_alloc; 35 } pre_proc_instance; 36 37 /**************************************************************************** 38 * Functions. 39 ****************************************************************************/ 40 void pre_proc_machine_specific_config(void); 41 void delete_pre_proc(pre_proc_instance *ppi); 42 int init_pre_proc(pre_proc_instance *ppi, int frame_size); 43 extern void spatial_filter_c(pre_proc_instance *ppi, unsigned char *s, unsigned char *d, int width, int height, int pitch, int strength); 44 extern void (*temp_filter)(pre_proc_instance *ppi, unsigned char *s, unsigned char *d, int bytes, int strength); 45 46 #endif 47