Release Clutter 1.11.4 (snapshot)
[profile/ivi/clutter.git] / clutter / clutter-flatten-effect.h
1 /*
2  * Clutter.
3  *
4  * An OpenGL based 'interactive canvas' library.
5  *
6  * Copyright (C) 2011  Intel Corporation.
7  *
8  * This library is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU Lesser General Public
10  * License as published by the Free Software Foundation; either
11  * version 2 of the License, or (at your option) any later version.
12  *
13  * This library is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16  * Lesser General Public License for more details.
17  *
18  * You should have received a copy of the GNU Lesser General Public
19  * License along with this library. If not, see <http://www.gnu.org/licenses/>.
20  *
21  * Authors:
22  *   Neil Roberts <neil@linux.intel.com>
23  */
24
25 #ifndef __CLUTTER_FLATTEN_EFFECT_H__
26 #define __CLUTTER_FLATTEN_EFFECT_H__
27
28 #include <clutter/clutter-offscreen-effect.h>
29
30 G_BEGIN_DECLS
31
32 #define CLUTTER_TYPE_FLATTEN_EFFECT                                     \
33   (_clutter_flatten_effect_get_type())
34 #define CLUTTER_FLATTEN_EFFECT(obj)                                     \
35   (G_TYPE_CHECK_INSTANCE_CAST ((obj),                                   \
36                                CLUTTER_TYPE_FLATTEN_EFFECT,             \
37                                ClutterFlattenEffect))
38 #define CLUTTER_FLATTEN_EFFECT_CLASS(klass)                             \
39   (G_TYPE_CHECK_CLASS_CAST ((klass),                                    \
40                             CLUTTER_TYPE_FLATTEN_EFFECT,                \
41                             ClutterFlattenEffectClass))
42 #define CLUTTER_IS_FLATTEN_EFFECT(obj)                                  \
43   (G_TYPE_CHECK_INSTANCE_TYPE ((obj),                                   \
44                                CLUTTER_TYPE_FLATTEN_EFFECT))
45 #define CLUTTER_IS_FLATTEN_EFFECT_CLASS(klass)                          \
46   (G_TYPE_CHECK_CLASS_TYPE ((klass),                                    \
47                             CLUTTER_TYPE_FLATTEN_EFFECT))
48 #define CLUTTER_FLATTEN_EFFECT_GET_CLASS(obj)                           \
49   (G_TYPE_INSTANCE_GET_CLASS ((obj),                                    \
50                               CLUTTER_FLATTEN_EFFECT,                   \
51                               ClutterFlattenEffectClass))
52
53 typedef struct _ClutterFlattenEffect        ClutterFlattenEffect;
54 typedef struct _ClutterFlattenEffectClass   ClutterFlattenEffectClass;
55 typedef struct _ClutterFlattenEffectPrivate ClutterFlattenEffectPrivate;
56
57 struct _ClutterFlattenEffectClass
58 {
59   ClutterOffscreenEffectClass parent_class;
60 };
61
62 struct _ClutterFlattenEffect
63 {
64   ClutterOffscreenEffect parent;
65 };
66
67 GType _clutter_flatten_effect_get_type (void) G_GNUC_CONST;
68
69 ClutterEffect *_clutter_flatten_effect_new (void);
70
71 G_END_DECLS
72
73 #endif /* __CLUTTER_FLATTEN_EFFECT_H__ */