Tizen 2.0 Release
[framework/multimedia/gst-plugins-bad0.10.git] / gst / gaudieffects / gstgaussblur.h
1 #ifndef __GST_GAUSS_BLUR_H__
2 #define __GST_GAUSS_BLUR_H__
3
4 #include <gst/gst.h>
5 #include <gst/video/video.h>
6 #include <gst/video/gstvideofilter.h>
7
8 G_BEGIN_DECLS
9
10 #define GST_TYPE_GAUSS_BLUR (gauss_blur_get_type())
11 #define GAUSS_BLUR(obj) \
12     (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_GAUSS_BLUR, GaussBlur))
13
14 typedef struct GaussBlur GaussBlur;
15 typedef struct GaussBlurClass GaussBlurClass;
16
17 struct GaussBlur
18 {
19   GstVideoFilter videofilter;
20   gint width, height, stride;
21
22   float cur_sigma, sigma;
23   int windowsize;
24
25   float *kernel;
26   float *kernel_sum;
27   float *tempim;
28   gint16 *smoothedim;
29 };
30
31 struct GaussBlurClass
32 {
33   GstVideoFilterClass parent_class;
34 };
35
36 GType gauss_blur_get_type(void);
37
38 G_END_DECLS
39
40 #endif