Merge "vp8_rd_pick_best_mbsegmentation code restructure"
[libvpx.git] / vp8 / common / preproc.h
blob0b142bda78a3d605260c5a6898635b1adc69cc29
1 /*
2 * Copyright (c) 2010 The WebM project authors. All Rights Reserved.
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 */
12 /****************************************************************************
14 * Module Title : preproc.h
16 * Description : simple preprocessor
18 ****************************************************************************/
20 #ifndef __INC_PREPROC_H
21 #define __INC_PREPROC_H
23 /****************************************************************************
24 * Types
25 ****************************************************************************/
27 typedef struct
29 unsigned char *frame_buffer;
30 int frame;
31 unsigned int *fixed_divide;
33 unsigned char *frame_buffer_alloc;
34 unsigned int *fixed_divide_alloc;
35 } pre_proc_instance;
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);
46 #endif