1 /*
2     FLAM3 - cosmic recursive fractal flames
3     Copyright (C) 1992-2009 Spotworks LLC
4 
5     This program is free software; you can redistribute it and/or modify
6     it under the terms of the GNU General Public License as published by
7     the Free Software Foundation; either version 3 of the License, or
8     (at your option) any later version.
9 
10     This program is distributed in the hope that it will be useful,
11     but WITHOUT ANY WARRANTY; without even the implied warranty of
12     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13     GNU General Public License for more details.
14 
15     You should have received a copy of the GNU General Public License
16     along with this program.  If not, see <http://www.gnu.org/licenses/>.
17 */
18 
19 #ifndef filters_included
20 #define filters_included
21 
22 #include "private.h"
23 
24 #define DE_THRESH   100
25 
26 typedef struct {
27    int max_filtered_counts;
28    int max_filter_index;
29    int kernel_size;
30    double *filter_widths;
31    double *filter_coefs;
32 } flam3_de_helper;
33 
34 extern double flam3_spatial_support[flam3_num_spatialfilters];
35 
36 double flam3_spatial_filter(int knum, double x);
37 int flam3_create_spatial_filter(flam3_frame *spec, int field, double **filter);
38 flam3_de_helper flam3_create_de_filters(double max_rad, double min_rad, double curve, int ss);
39 double flam3_create_temporal_filter(int numsteps, int filter_type, double filter_exp, double filter_width,
40                                     double **temporal_filter, double **temporal_deltas);
41 
42 #endif
43 
44 
45