1 #ifndef __OP_TRANSFORM_H__ 2 #define __OP_TRANSFORM_H__ 3 4 #include <gegl-matrix.h> 5 6 G_BEGIN_DECLS 7 8 #define TYPE_OP_TRANSFORM (op_transform_get_type ()) 9 #define OP_TRANSFORM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_OP_TRANSFORM, OpTransform)) 10 #define OP_TRANSFORM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_OP_TRANSFORM, OpTransformClass)) 11 #define IS_OP_TRANSFORM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_OP_TRANSFORM)) 12 #define IS_OP_TRANSFORM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_OP_TRANSFORM)) 13 #define OP_TRANSFORM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_OP_TRANSFORM, OpTransformClass)) 14 15 typedef struct _OpTransform OpTransform; 16 17 struct _OpTransform 18 { 19 GeglOperationFilter parent_instance; 20 gdouble origin_x; 21 gdouble origin_y; 22 gdouble near_z; 23 GeglSamplerType sampler; 24 }; 25 26 typedef struct _OpTransformClass OpTransformClass; 27 28 struct _OpTransformClass 29 { 30 GeglOperationFilterClass parent_class; 31 32 void (* create_matrix) (OpTransform *transform, 33 GeglMatrix3 *matrix); 34 GeglAbyssPolicy (* get_abyss_policy) (OpTransform *transform); 35 }; 36 37 GType op_transform_get_type (void) G_GNUC_CONST; 38 39 G_END_DECLS 40 41 #endif 42