1 /* This file is part of GEGL
3 * GEGL is free software; you can redistribute it and/or
4 * modify it under the terms of the GNU Lesser General Public
5 * License as published by the Free Software Foundation; either
6 * version 3 of the License, or (at your option) any later version.
8 * GEGL is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 * Lesser General Public License for more details.
13 * You should have received a copy of the GNU Lesser General Public
14 * License along with GEGL; if not, see <https://www.gnu.org/licenses/>.
16 * Copyright 2003 Calvin Williamson
20 #ifndef __GEGL_TYPES_H__
21 #define __GEGL_TYPES_H__
23 #include <glib-object.h>
25 #include "gegl-enums.h"
29 #define GEGL_AUTO_ROWSTRIDE 0
33 GEGL_PARAM_PAD_OUTPUT
= 1 << G_PARAM_USER_SHIFT
,
34 GEGL_PARAM_PAD_INPUT
= 1 << (G_PARAM_USER_SHIFT
+ 1)
39 GEGL_BLIT_DEFAULT
= 0,
40 GEGL_BLIT_CACHE
= 1 << 0,
41 GEGL_BLIT_DIRTY
= 1 << 1
46 GEGL_SPLIT_STRATEGY_AUTO
,
47 GEGL_SPLIT_STRATEGY_HORIZONTAL
,
48 GEGL_SPLIT_STRATEGY_VERTICAL
52 typedef struct _GeglConfig GeglConfig
;
53 GType
gegl_config_get_type (void) G_GNUC_CONST
;
54 #define GEGL_TYPE_CONFIG (gegl_config_get_type ())
55 #define GEGL_CONFIG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEGL_TYPE_CONFIG, GeglConfig))
56 #define GEGL_IS_CONFIG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEGL_TYPE_CONFIG))
58 typedef struct _GeglStats GeglStats
;
59 GType
gegl_stats_get_type (void) G_GNUC_CONST
;
60 #define GEGL_TYPE_STATS (gegl_stats_get_type ())
61 #define GEGL_STATS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEGL_TYPE_STATS, GeglStats))
62 #define GEGL_IS_STATS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEGL_TYPE_STATS))
64 typedef struct _GeglCurve GeglCurve
;
65 typedef struct _GeglPath GeglPath
;
66 typedef struct _GeglColor GeglColor
;
67 typedef struct _GeglAudioFragment GeglAudioFragment
;
69 typedef struct _GeglOperationContext GeglOperationContext
;
71 typedef struct _GeglOperation GeglOperation
;
72 GType
gegl_operation_get_type (void) G_GNUC_CONST
;
73 #define GEGL_TYPE_OPERATION (gegl_operation_get_type ())
74 #define GEGL_OPERATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEGL_TYPE_OPERATION, GeglOperation))
75 #define GEGL_IS_OPERATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEGL_TYPE_OPERATION))
76 G_DEFINE_AUTOPTR_CLEANUP_FUNC (GeglOperation
, g_object_unref
)
78 typedef struct _GeglNode GeglNode
;
79 GType
gegl_node_get_type (void) G_GNUC_CONST
;
80 #define GEGL_TYPE_NODE (gegl_node_get_type())
81 #define GEGL_NODE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEGL_TYPE_NODE, GeglNode))
82 #define GEGL_IS_NODE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEGL_TYPE_NODE))
83 G_DEFINE_AUTOPTR_CLEANUP_FUNC (GeglNode
, g_object_unref
)
85 typedef struct _GeglProcessor GeglProcessor
;
86 GType
gegl_processor_get_type (void) G_GNUC_CONST
;
87 #define GEGL_TYPE_PROCESSOR (gegl_processor_get_type())
88 #define GEGL_PROCESSOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEGL_TYPE_PROCESSOR, GeglProcessor))
89 #define GEGL_IS_PROCESSOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEGL_TYPE_PROCESSOR))
90 G_DEFINE_AUTOPTR_CLEANUP_FUNC (GeglProcessor
, g_object_unref
)
92 typedef struct _GeglRandom GeglRandom
;
93 GType
gegl_random_get_type (void) G_GNUC_CONST
;
94 #define GEGL_TYPE_RANDOM (gegl_random_get_type())
96 #include <gegl-buffer.h>
100 #endif /* __GEGL_TYPES_H__ */