<MACRO>
<NAME>GIMPVAR</NAME>
#    define GIMPVAR __declspec(dllexport)
</MACRO>
<MACRO>
<NAME>GIMPVAR</NAME>
#    define GIMPVAR extern __declspec(dllimport)
</MACRO>
<MACRO>
<NAME>GIMPVAR</NAME>
#  define GIMPVAR extern
</MACRO>
<MACRO>
<NAME>gimp_get_data</NAME>
#define gimp_get_data         gimp_procedural_db_get_data
</MACRO>
<MACRO>
<NAME>gimp_get_data_size</NAME>
#define gimp_get_data_size    gimp_procedural_db_get_data_size
</MACRO>
<MACRO>
<NAME>gimp_set_data</NAME>
#define gimp_set_data         gimp_procedural_db_set_data
</MACRO>
<VARIABLE>
<NAME>gimp_major_version</NAME>
extern guint gimp_major_version;
</VARIABLE>
<VARIABLE>
<NAME>gimp_minor_version</NAME>
extern guint gimp_minor_version;
</VARIABLE>
<VARIABLE>
<NAME>gimp_micro_version</NAME>
extern guint gimp_micro_version;
</VARIABLE>
<USER_FUNCTION>
<NAME>GimpInitProc</NAME>
<RETURNS>void </RETURNS>
void
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>GimpQuitProc</NAME>
<RETURNS>void </RETURNS>
void
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>GimpQueryProc</NAME>
<RETURNS>void </RETURNS>
void
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>GimpRunProc</NAME>
<RETURNS>void </RETURNS>
gchar      *name,
				gint        nparams,
				GimpParam  *param,
				gint       *nreturn_vals,
				GimpParam **return_vals
</USER_FUNCTION>
<STRUCT>
<NAME>GimpPlugInInfo</NAME>
struct GimpPlugInInfo
{
  /* called when the gimp application initially starts up */
  GimpInitProc  init_proc;

  /* called when the gimp application exits */
  GimpQuitProc  quit_proc;

  /* called by the gimp so that the plug-in can inform the
   *  gimp of what it does. (ie. installing a procedure database
   *  procedure).
   */
  GimpQueryProc query_proc;

  /* called to run a procedure the plug-in installed in the
   *  procedure database.
   */
  GimpRunProc   run_proc;
};
</STRUCT>
<STRUCT>
<NAME>GimpParamDef</NAME>
struct GimpParamDef
{
  GimpPDBArgType  type;
  gchar          *name;
  gchar          *description;
};
</STRUCT>
<STRUCT>
<NAME>GimpParamRegion</NAME>
struct GimpParamRegion
{
  gint32 x;
  gint32 y;
  gint32 width;
  gint32 height;
};
</STRUCT>
<UNION>
<NAME>GimpParamData</NAME>
union GimpParamData
{
  gint32            d_int32;
  gint16            d_int16;
  gint8             d_int8;
  gdouble           d_float;
  gchar            *d_string;
  gint32           *d_int32array;
  gint16           *d_int16array;
  gint8            *d_int8array;
  gdouble          *d_floatarray;
  gchar           **d_stringarray;
  GimpRGB           d_color;
  GimpParamRegion   d_region;
  gint32            d_display;
  gint32            d_image;
  gint32            d_layer;
  gint32            d_layer_mask;
  gint32            d_channel;
  gint32            d_drawable;
  gint32            d_selection;
  gint32            d_boundary;
  gint32            d_path;
  gint32            d_unit;
  GimpParasite      d_parasite;
  gint32            d_tattoo;
  GimpPDBStatusType d_status;
};
</UNION>
<STRUCT>
<NAME>GimpParam</NAME>
struct GimpParam
{
  GimpPDBArgType type;
  GimpParamData  data;
};
</STRUCT>
<FUNCTION>
<NAME>set_gimp_PLUG_IN_INFO_PTR</NAME>
<RETURNS>void  </RETURNS>
GimpPlugInInfo *
</FUNCTION>
<MACRO>
<NAME>MAIN</NAME>
#  define MAIN()			\
   static int				\
   win32_gimp_main (int argc, char **argv)	\
   {					\
     set_gimp_PLUG_IN_INFO_PTR(&PLUG_IN_INFO);	\
     return gimp_main (argc, argv);	\
   }					\
					\
   struct HINSTANCE__;			\
   int _stdcall				\
   WinMain (struct HINSTANCE__ *hInstance, \
	    struct HINSTANCE__ *hPrevInstance,	\
	    char *lpszCmdLine,		\
	    int   nCmdShow)		\
   {					\
     return win32_gimp_main (__argc, __argv);	\
   }					\
					\
   int					\
   main (int argc, char *argv[])	\
   {					\
     return win32_gimp_main (argc, argv);	\
   }
</MACRO>
<MACRO>
<NAME>MAIN</NAME>
#  define MAIN()			\
   int					\
   main (int argc, char *argv[])	\
   {					\
     return gimp_main (argc, argv);	\
   }
</MACRO>
<MACRO>
<NAME>MAIN</NAME>
#  define MAIN()				\
   int						\
   main (int argc, char *argv[])		\
   {						\
     set_gimp_PLUG_IN_INFO(&PLUG_IN_INFO);	\
     return gimp_main (argc, argv);		\
   }
</MACRO>
<FUNCTION>
<NAME>gimp_main</NAME>
<RETURNS>gint  </RETURNS>
gint      argc,gchar    *argv[]
</FUNCTION>
<FUNCTION>
<NAME>gimp_default_display</NAME>
<RETURNS>gint32  </RETURNS>
void
</FUNCTION>
<FUNCTION>
<NAME>gimp_install_procedure</NAME>
<RETURNS>void  </RETURNS>
gchar        *name,gchar        *blurb,gchar        *help,gchar        *author,gchar        *copyright,gchar        *date,gchar        *menu_path,gchar        *image_types,gint          type,gint          nparams,gint          nreturn_vals,GimpParamDef *params,GimpParamDef *return_vals
</FUNCTION>
<FUNCTION>
<NAME>gimp_install_temp_proc</NAME>
<RETURNS>void  </RETURNS>
gchar        *name,gchar        *blurb,gchar        *help,gchar        *author,gchar        *copyright,gchar        *date,gchar        *menu_path,gchar        *image_types,gint          type,gint          nparams,gint          nreturn_vals,GimpParamDef *params,GimpParamDef *return_vals,GimpRunProc   run_proc
</FUNCTION>
<FUNCTION>
<NAME>gimp_uninstall_temp_proc</NAME>
<RETURNS>void  </RETURNS>
gchar        *name
</FUNCTION>
<FUNCTION>
<NAME>gimp_run_procedure</NAME>
<RETURNS>GimpParam  *</RETURNS>
gchar     *name,gint      *nreturn_vals,...
</FUNCTION>
<FUNCTION>
<NAME>gimp_run_procedure2</NAME>
<RETURNS>GimpParam  *</RETURNS>
gchar     *name,gint      *nreturn_vals,gint       nparams,GimpParam *params
</FUNCTION>
<FUNCTION>
<NAME>gimp_destroy_params</NAME>
<RETURNS>void  </RETURNS>
GimpParam    *params,gint          nparams
</FUNCTION>
<FUNCTION>
<NAME>gimp_destroy_paramdefs</NAME>
<RETURNS>void  </RETURNS>
GimpParamDef *paramdefs,gint          nparams
</FUNCTION>
<FUNCTION>
<NAME>gimp_gamma</NAME>
<RETURNS>gdouble  </RETURNS>
void
</FUNCTION>
<FUNCTION>
<NAME>gimp_install_cmap</NAME>
<RETURNS>gboolean  </RETURNS>
void
</FUNCTION>
<FUNCTION>
<NAME>gimp_use_xshm</NAME>
<RETURNS>gboolean  </RETURNS>
void
</FUNCTION>
<FUNCTION>
<NAME>gimp_color_cube</NAME>
<RETURNS>guchar     *</RETURNS>
void
</FUNCTION>
<FUNCTION>
<NAME>gimp_min_colors</NAME>
<RETURNS>gint  </RETURNS>
void
</FUNCTION>
<FUNCTION>
<NAME>gimp_get_progname</NAME>
<RETURNS>gchar      *</RETURNS>
void
</FUNCTION>
<FUNCTION>
<NAME>gimp_attach_new_parasite</NAME>
<RETURNS>void  </RETURNS>
const gchar    *name,gint            flags,gint            size,const gpointer  data
</FUNCTION>
<FUNCTION>
<NAME>gimp_brushes_get_brush_data</NAME>
<RETURNS>gchar *</RETURNS>
gchar                 *name,gdouble               *opacity,gint                  *spacing,GimpLayerModeEffects  *paint_mode,gint                  *width,gint                  *height,gint                  *length,guint8               **mask_data
</FUNCTION>
<FUNCTION>
<NAME>gimp_brushes_popup</NAME>
<RETURNS>gboolean  </RETURNS>
gchar                *brush_callback,gchar                *popup_title,gchar                *initial_brush,gdouble               opacity,gint                  spacing,GimpLayerModeEffects  paint_mode
</FUNCTION>
<FUNCTION>
<NAME>gimp_brushes_close_popup</NAME>
<RETURNS>gboolean  </RETURNS>
gchar                *brush_callback
</FUNCTION>
<FUNCTION>
<NAME>gimp_brushes_set_popup</NAME>
<RETURNS>gboolean  </RETURNS>
gchar                *brush_callback,gchar                *brush_name,gdouble               opacity,gint                  spacing,GimpLayerModeEffects  paint_mode
</FUNCTION>
<MACRO>
<NAME>gimp_channel_get_image_id</NAME>
#define gimp_channel_get_image_id  gimp_drawable_image
</MACRO>
<FUNCTION>
<NAME>gimp_channel_new</NAME>
<RETURNS>gint32  </RETURNS>
gint32    image_ID,gchar    *name,guint     width,guint     height,gdouble   opacity,GimpRGB  *color
</FUNCTION>
<FUNCTION>
<NAME>gimp_channel_copy</NAME>
<RETURNS>gint32  </RETURNS>
gint32          channel_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_channel_delete</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          channel_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_channel_combine_masks</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          channel1_ID,gint32          channel2_ID,GimpChannelOps  operation,gint            offx,gint            offy
</FUNCTION>
<FUNCTION>
<NAME>gimp_channel_get_name</NAME>
<RETURNS>gchar *</RETURNS>
gint32          channel_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_channel_set_name</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          channel_ID,gchar          *name
</FUNCTION>
<FUNCTION>
<NAME>gimp_channel_get_visible</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          channel_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_channel_set_visible</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          channel_ID,gboolean        visible
</FUNCTION>
<FUNCTION>
<NAME>gimp_channel_get_show_masked</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          channel_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_channel_set_show_masked</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          channel_ID,gboolean        show_masked
</FUNCTION>
<FUNCTION>
<NAME>gimp_channel_get_opacity</NAME>
<RETURNS>gdouble  </RETURNS>
gint32          channel_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_channel_set_opacity</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          channel_ID,gdouble         opacity
</FUNCTION>
<FUNCTION>
<NAME>gimp_channel_get_color</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          channel_ID,GimpRGB        *color
</FUNCTION>
<FUNCTION>
<NAME>gimp_channel_set_color</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          channel_ID,GimpRGB        *color
</FUNCTION>
<FUNCTION>
<NAME>gimp_channel_get_tattoo</NAME>
<RETURNS>gint  </RETURNS>
gint32          channel_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_channel_set_tattoo</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          channel_ID,gint            tattoo
</FUNCTION>
<FUNCTION>
<NAME>gimp_brightness_contrast</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              drawable_ID,gint                brightness,gint                contrast
</FUNCTION>
<FUNCTION>
<NAME>gimp_levels</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              drawable_ID,GimpChannelLutType  channel,gint                low_input,gint                high_input,gdouble             gamma,gint                low_output,gint                high_output
</FUNCTION>
<FUNCTION>
<NAME>gimp_posterize</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              drawable_ID,gint                levels
</FUNCTION>
<FUNCTION>
<NAME>gimp_desaturate</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              drawable_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_equalize</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              drawable_ID,gboolean            mask_only
</FUNCTION>
<FUNCTION>
<NAME>gimp_invert</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              drawable_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_curves_spline</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              drawable_ID,GimpChannelLutType  channel,gint                num_points,guint8             *control_pts
</FUNCTION>
<FUNCTION>
<NAME>gimp_curves_explicit</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              drawable_ID,GimpChannelLutType  channel,gint                num_bytes,guint8             *curve
</FUNCTION>
<FUNCTION>
<NAME>gimp_color_balance</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              drawable_ID,GimpTransferMode    transfer_mode,gboolean            preserve_lum,gdouble             cyan_red,gdouble             magenta_green,gdouble             yellow_blue
</FUNCTION>
<FUNCTION>
<NAME>gimp_histogram</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              drawable_ID,GimpChannelLutType  channel,gint                start_range,gint                end_range,gdouble            *mean,gdouble            *std_dev,gdouble            *median,gdouble            *pixels,gdouble            *count,gdouble            *percentile
</FUNCTION>
<FUNCTION>
<NAME>gimp_hue_saturation</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              drawable_ID,GimpHueRange        hue_range,gdouble             hue_offset,gdouble             lightness,gdouble             saturation
</FUNCTION>
<FUNCTION>
<NAME>gimp_threshold</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              drawable_ID,gint                low_threshold,gint                high_threshold
</FUNCTION>
<USER_FUNCTION>
<NAME>GimpColorDisplayInit</NAME>
<RETURNS>void </RETURNS>
void
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>GimpColorDisplayNew</NAME>
<RETURNS>gpointer </RETURNS>
gint          type
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>GimpColorDisplayClone</NAME>
<RETURNS>gpointer </RETURNS>
gpointer      cd_ID
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>GimpColorDisplayConvert</NAME>
<RETURNS>void </RETURNS>
gpointer      cd_ID,
						      guchar       *buf,
						      gint          width,
						      gint          height,
						      gint          bpp,
						      gint          bpl
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>GimpColorDisplayDestroy</NAME>
<RETURNS>void </RETURNS>
gpointer      cd_ID
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>GimpColorDisplayFinalize</NAME>
<RETURNS>void </RETURNS>
void
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>GimpColorDisplayLoadState</NAME>
<RETURNS>void </RETURNS>
gpointer      cd_ID,
						      GimpParasite *state
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>GimpColorDisplaySaveState</NAME>
<RETURNS>GimpParasite *</RETURNS>
gpointer      cd_ID
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>GimpColorDisplayConfigure</NAME>
<RETURNS>void </RETURNS>
gpointer      cd_ID,
						      GFunc         ok_func,
						      gpointer      ok_data,
						      GFunc         cancel_func,
						      gpointer      cancel_data
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>GimpColorDisplayConfigureCancel</NAME>
<RETURNS>void </RETURNS>
gpointer      cd_ID
</USER_FUNCTION>
<STRUCT>
<NAME>GimpColorDisplayMethods</NAME>
</STRUCT>
<STRUCT>
<NAME>GimpColorDisplayMethods</NAME>
struct GimpColorDisplayMethods
{
  GimpColorDisplayInit            init;
  GimpColorDisplayNew             new;
  GimpColorDisplayClone           clone;
  GimpColorDisplayConvert         convert;
  GimpColorDisplayDestroy         destroy;
  GimpColorDisplayFinalize        finalize;
  GimpColorDisplayLoadState       load;
  GimpColorDisplaySaveState       save;
  GimpColorDisplayConfigure       configure;
  GimpColorDisplayConfigureCancel cancel;
};
</STRUCT>
<FUNCTION>
<NAME>gimp_color_display_register</NAME>
<RETURNS>gboolean  </RETURNS>
const gchar             *name,GimpColorDisplayMethods *methods
</FUNCTION>
<FUNCTION>
<NAME>gimp_color_display_unregister</NAME>
<RETURNS>gboolean  </RETURNS>
const gchar             *name
</FUNCTION>
<ENUM>
<NAME>GimpColorSelectorChannelType</NAME>
typedef enum
{
  GIMP_COLOR_SELECTOR_HUE,
  GIMP_COLOR_SELECTOR_SATURATION,
  GIMP_COLOR_SELECTOR_VALUE,
  GIMP_COLOR_SELECTOR_RED,
  GIMP_COLOR_SELECTOR_GREEN,
  GIMP_COLOR_SELECTOR_BLUE,
  GIMP_COLOR_SELECTOR_ALPHA
} GimpColorSelectorChannelType;
</ENUM>
<USER_FUNCTION>
<NAME>GimpColorSelectorCallback</NAME>
<RETURNS>void </RETURNS>
gpointer       data,
						   const GimpHSV *hsv,
						   const GimpRGB *rgb
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>GimpColorSelectorNewFunc</NAME>
<RETURNS>GtkWidget *</RETURNS>
const GimpHSV *hsv,
						   const GimpRGB *rgb,
						   gboolean       show_alpha,
						   GimpColorSelectorCallback cb,
						   gpointer       data,
						   gpointer      *selector_data
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>GimpColorSelectorFreeFunc</NAME>
<RETURNS>void </RETURNS>
gpointer       selector_data
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>GimpColorSelectorSetColorFunc</NAME>
<RETURNS>void </RETURNS>
gpointer       selector_data,
						   const GimpHSV *hsv,
						   const GimpRGB *rgb
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>GimpColorSelectorSetChannelFunc</NAME>
<RETURNS>void </RETURNS>
gpointer       selector_data,
						   GimpColorSelectorChannelType  type
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>GimpColorSelectorFinishedCB</NAME>
<RETURNS>void </RETURNS>
gpointer       finished_data
</USER_FUNCTION>
<STRUCT>
<NAME>GimpColorSelectorMethods</NAME>
</STRUCT>
<STRUCT>
<NAME>GimpColorSelectorMethods</NAME>
struct GimpColorSelectorMethods
{
  GimpColorSelectorNewFunc        new;
  GimpColorSelectorFreeFunc       free;

  GimpColorSelectorSetColorFunc   set_color;
  GimpColorSelectorSetChannelFunc set_channel;
};
</STRUCT>
<TYPEDEF>
<NAME>GimpColorSelectorID</NAME>
typedef gpointer GimpColorSelectorID;
</TYPEDEF>
<FUNCTION>
<NAME>gimp_color_selector_register</NAME>
<RETURNS>GimpColorSelectorID</RETURNS>
const gchar                 *name,const gchar                 *help_page,GimpColorSelectorMethods    *methods
</FUNCTION>
<FUNCTION>
<NAME>gimp_color_selector_unregister</NAME>
<RETURNS>gboolean</RETURNS>
GimpColorSelectorID          id,GimpColorSelectorFinishedCB  finished_cb,gpointer                     finished_data
</FUNCTION>
<FUNCTION>
<NAME>gimp_convert_rgb</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                  image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_convert_grayscale</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                  image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_convert_indexed</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                  image_ID,GimpConvertDitherType   dither_type,GimpConvertPaletteType  palette_type,gint                    num_cols,gboolean                alpha_dither,gboolean                remove_unused,gchar                  *palette
</FUNCTION>
<FUNCTION>
<NAME>gimp_display_new</NAME>
<RETURNS>gint32  </RETURNS>
gint32 image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_display_delete</NAME>
<RETURNS>gboolean  </RETURNS>
gint32 display_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_displays_flush</NAME>
<RETURNS>gboolean  </RETURNS>
void
</FUNCTION>
<MACRO>
<NAME>gimp_drawable_offset</NAME>
#define gimp_drawable_offset    gimp_channel_ops_offset
</MACRO>
<MACRO>
<NAME>gimp_drawable_image_id</NAME>
#define gimp_drawable_image_id  gimp_drawable_image
</MACRO>
<MACRO>
<NAME>gimp_drawable_bpp</NAME>
#define gimp_drawable_bpp       gimp_drawable_bytes
</MACRO>
<STRUCT>
<NAME>GimpDrawable</NAME>
struct GimpDrawable
{
  gint32    id;            /* drawable ID */
  guint     width;         /* width of drawble */
  guint     height;        /* height of drawble */
  guint     bpp;           /* bytes per pixel of drawable */
  guint     ntile_rows;    /* # of tile rows */
  guint     ntile_cols;    /* # of tile columns */
  GimpTile *tiles;         /* the normal tiles */
  GimpTile *shadow_tiles;  /* the shadow tiles */
};
</STRUCT>
<FUNCTION>
<NAME>gimp_drawable_get</NAME>
<RETURNS>GimpDrawable  *</RETURNS>
gint32          drawable_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_detach</NAME>
<RETURNS>void  </RETURNS>
GimpDrawable   *drawable
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_flush</NAME>
<RETURNS>void  </RETURNS>
GimpDrawable   *drawable
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_delete</NAME>
<RETURNS>void  </RETURNS>
GimpDrawable   *drawable
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_name</NAME>
<RETURNS>gchar         *</RETURNS>
gint32          drawable_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_visible</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          drawable_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_set_name</NAME>
<RETURNS>void  </RETURNS>
gint32          drawable_ID,gchar          *name
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_set_visible</NAME>
<RETURNS>void  </RETURNS>
gint32          drawable_ID,gboolean        visible
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_get_tile</NAME>
<RETURNS>GimpTile      *</RETURNS>
GimpDrawable   *drawable,gint            shadow,gint            row,gint            col
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_get_tile2</NAME>
<RETURNS>GimpTile      *</RETURNS>
GimpDrawable   *drawable,gint            shadow,gint            x,gint            y
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_get_thumbnail_data</NAME>
<RETURNS>guchar        *</RETURNS>
gint32          drawable_ID,gint           *width,gint           *height,gint           *bpp
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_attach_new_parasite</NAME>
<RETURNS>void  </RETURNS>
gint32          drawable_ID,const gchar    *name,gint            flags,gint            size,const gpointer  data
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_merge_shadow</NAME>
<RETURNS>gboolean  </RETURNS>
gint32           drawable_ID,gboolean         undo
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_fill</NAME>
<RETURNS>gboolean  </RETURNS>
gint32           drawable_ID,GimpFillType     fill_type
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_update</NAME>
<RETURNS>gboolean  </RETURNS>
gint32           drawable_ID,gint             x,gint             y,gint             width,gint             height
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_mask_bounds</NAME>
<RETURNS>gboolean  </RETURNS>
gint32           drawable_ID,gint            *x1,gint            *y1,gint            *x2,gint            *y2
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_image</NAME>
<RETURNS>gint32  </RETURNS>
gint32           drawable_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_type</NAME>
<RETURNS>GimpImageType  </RETURNS>
gint32           drawable_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_has_alpha</NAME>
<RETURNS>gboolean  </RETURNS>
gint32           drawable_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_type_with_alpha</NAME>
<RETURNS>GimpImageType  </RETURNS>
gint32           drawable_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_is_rgb</NAME>
<RETURNS>gboolean  </RETURNS>
gint32           drawable_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_is_gray</NAME>
<RETURNS>gboolean  </RETURNS>
gint32           drawable_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_is_indexed</NAME>
<RETURNS>gboolean  </RETURNS>
gint32           drawable_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_bytes</NAME>
<RETURNS>gint  </RETURNS>
gint32           drawable_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_width</NAME>
<RETURNS>gint  </RETURNS>
gint32           drawable_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_height</NAME>
<RETURNS>gint  </RETURNS>
gint32           drawable_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_offsets</NAME>
<RETURNS>gboolean  </RETURNS>
gint32           drawable_ID,gint            *offset_x,gint            *offset_y
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_is_layer</NAME>
<RETURNS>gboolean  </RETURNS>
gint32           drawable_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_is_layer_mask</NAME>
<RETURNS>gboolean  </RETURNS>
gint32           drawable_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_is_channel</NAME>
<RETURNS>gboolean  </RETURNS>
gint32           drawable_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_offset</NAME>
<RETURNS>gboolean  </RETURNS>
gint32           drawable_ID,gboolean         wrap_around,GimpOffsetType   fill_type,gint             offset_x,gint             offset_y
</FUNCTION>
<FUNCTION>
<NAME>gimp_edit_cut</NAME>
<RETURNS>gboolean  </RETURNS>
gint32       drawable_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_edit_copy</NAME>
<RETURNS>gboolean  </RETURNS>
gint32       drawable_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_edit_paste</NAME>
<RETURNS>gint32  </RETURNS>
gint32       drawable_ID,gboolean     paste_into
</FUNCTION>
<FUNCTION>
<NAME>gimp_edit_clear</NAME>
<RETURNS>gboolean  </RETURNS>
gint32       drawable_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_edit_fill</NAME>
<RETURNS>gboolean  </RETURNS>
gint32       drawable_ID,GimpFillType fill_type
</FUNCTION>
<FUNCTION>
<NAME>gimp_edit_stroke</NAME>
<RETURNS>gboolean  </RETURNS>
gint32       drawable_ID
</FUNCTION>
<ENUM>
<NAME>GimpAddMaskType</NAME>
typedef enum
{
  GIMP_WHITE_MASK,
  GIMP_BLACK_MASK,
  GIMP_ALPHA_MASK,
  GIMP_SELECTION_MASK,
  GIMP_INV_SELECTION_MASK
} GimpAddMaskType;
</ENUM>
<ENUM>
<NAME>GimpBlendMode</NAME>
typedef enum
{
  GIMP_FG_BG_RGB,
  GIMP_FG_BG_HSV,
  GIMP_FG_TRANS,
  GIMP_CUSTOM
} GimpBlendMode;
</ENUM>
<ENUM>
<NAME>GimpBrushApplicationMode</NAME>
typedef enum
{
  GIMP_HARD,
  GIMP_SOFT,
  GIMP_PRESSURE
} GimpBrushApplicationMode;
</ENUM>
<ENUM>
<NAME>GimpBucketFillMode</NAME>
typedef enum
{
  GIMP_FG_BUCKET_FILL,
  GIMP_BG_BUCKET_FILL,
  GIMP_PATTERN_BUCKET_FILL
} GimpBucketFillMode;
</ENUM>
<ENUM>
<NAME>GimpChannelLutType</NAME>
typedef enum
{
  GIMP_VALUE_LUT,
  GIMP_RED_LUT,
  GIMP_GREEN_LUT,
  GIMP_BLUE_LUT,
  GIMP_ALPHA_LUT
} GimpChannelLutType;
</ENUM>
<ENUM>
<NAME>GimpChannelOps</NAME>
typedef enum
{
  GIMP_ADD,
  GIMP_SUB,
  GIMP_REPLACE,
  GIMP_INTERSECT
} GimpChannelOps;
</ENUM>
<ENUM>
<NAME>GimpChannelType</NAME>
typedef enum
{
  GIMP_RED_CHANNEL,
  GIMP_GREEN_CHANNEL,
  GIMP_BLUE_CHANNEL,
  GIMP_GRAY_CHANNEL,
  GIMP_INDEXED_CHANNEL,
  GIMP_ALPHA_CHANNEL
} GimpChannelType;
</ENUM>
<ENUM>
<NAME>GimpCloneType</NAME>
typedef enum
{
  GIMP_IMAGE_CLONE,
  GIMP_PATTERN_CLONE
} GimpCloneType;
</ENUM>
<ENUM>
<NAME>GimpConvertDitherType</NAME>
typedef enum
{
  GIMP_NO_DITHER,
  GIMP_FS_DITHER,
  GIMP_FSLOWBLEED_DITHER,
  GIMP_FIXED_DITHER,
  GIMP_NODESTRUCT_DITHER
} GimpConvertDitherType;
</ENUM>
<ENUM>
<NAME>GimpConvertPaletteType</NAME>
typedef enum
{
  GIMP_MAKE_PALETTE,
  GIMP_REUSE_PALETTE,
  GIMP_WEB_PALETTE,
  GIMP_MONO_PALETTE,
  GIMP_CUSTOM_PALETTE
} GimpConvertPaletteType;
</ENUM>
<ENUM>
<NAME>GimpConvolutionType</NAME>
typedef enum
{
  GIMP_NORMAL_CONVOL,
  GIMP_ABSOLUTE_CONVOL,
  GIMP_NEGATIVE_CONVOL
} GimpConvolutionType;
</ENUM>
<ENUM>
<NAME>GimpConvolveType</NAME>
typedef enum
{
  GIMP_BLUR_CONVOLVE,
  GIMP_SHARPEN_CONVOLVE,
  GIMP_CUSTOM_CONVOLVE
} GimpConvolveType;
</ENUM>
<ENUM>
<NAME>GimpDodgeBurnMode</NAME>
typedef enum
{
  GIMP_DODGEBURN_HIGHLIGHTS,
  GIMP_DODGEBURN_MIDTONES,
  GIMP_DODGEBURN_SHADOWS
} GimpDodgeBurnMode;
</ENUM>
<ENUM>
<NAME>GimpDodgeBurnType</NAME>
typedef enum
{
  GIMP_DODGE,
  GIMP_BURN
} GimpDodgeBurnType;
</ENUM>
<ENUM>
<NAME>GimpFillType</NAME>
typedef enum
{
  GIMP_FG_IMAGE_FILL,
  GIMP_BG_IMAGE_FILL,
  GIMP_WHITE_IMAGE_FILL,
  GIMP_TRANS_IMAGE_FILL,
  GIMP_NO_IMAGE_FILL
} GimpFillType;
</ENUM>
<ENUM>
<NAME>GimpImageBaseType</NAME>
typedef enum
{
  GIMP_RGB,
  GIMP_GRAY,
  GIMP_INDEXED
} GimpImageBaseType;
</ENUM>
<ENUM>
<NAME>GimpImageType</NAME>
typedef enum
{
  GIMP_RGB_IMAGE,
  GIMP_RGBA_IMAGE,
  GIMP_GRAY_IMAGE,
  GIMP_GRAYA_IMAGE,
  GIMP_INDEXED_IMAGE,
  GIMP_INDEXEDA_IMAGE
} GimpImageType;
</ENUM>
<ENUM>
<NAME>GimpOffsetType</NAME>
typedef enum
{
  GIMP_OFFSET_BACKGROUND,
  GIMP_OFFSET_TRANSPARENT
} GimpOffsetType;
</ENUM>
<ENUM>
<NAME>GimpGradientPaintMode</NAME>
typedef enum
{
  GIMP_ONCE_FORWARD,
  GIMP_ONCE_BACKWARDS,
  GIMP_LOOP_SAWTOOTH,
  GIMP_LOOP_TRIANGLE,
  GIMP_ONCE_END_COLOR
} GimpGradientPaintMode;
</ENUM>
<ENUM>
<NAME>GimpGradientType</NAME>
typedef enum
{
  GIMP_LINEAR,
  GIMP_BILINEAR,
  GIMP_RADIAL,
  GIMP_SQUARE,
  GIMP_CONICAL_SYMMETRIC,
  GIMP_CONICAL_ASYMMETRIC,
  GIMP_SHAPEBURST_ANGULAR,
  GIMP_SHAPEBURST_SPHERICAL,
  GIMP_SHAPEBURST_DIMPLED,
  GIMP_SPIRAL_CLOCKWISE,
  GIMP_SPIRAL_ANTICLOCKWISE
} GimpGradientType;
</ENUM>
<ENUM>
<NAME>GimpHueRange</NAME>
typedef enum
{
  GIMP_ALL_HUES,
  GIMP_RED_HUES,
  GIMP_YELLOW_HUES,
  GIMP_GREEN_HUES,
  GIMP_CYAN_HUES,
  GIMP_BLUE_HUES,
  GIMP_MAGENTA_HUES
} GimpHueRange;
</ENUM>
<ENUM>
<NAME>GimpInterpolationType</NAME>
typedef enum
{
  GIMP_LINEAR_INTERPOLATION,
  GIMP_CUBIC_INTERPOLATION,
  GIMP_NEAREST_NEIGHBOR_INTERPOLATION
} GimpInterpolationType;
</ENUM>
<ENUM>
<NAME>GimpLayerModeEffects</NAME>
typedef enum
{
  GIMP_NORMAL_MODE,
  GIMP_DISSOLVE_MODE,
  GIMP_BEHIND_MODE,
  GIMP_MULTIPLY_MODE,
  GIMP_SCREEN_MODE,
  GIMP_OVERLAY_MODE,
  GIMP_DIFFERENCE_MODE,
  GIMP_ADDITION_MODE,
  GIMP_SUBTRACT_MODE,
  GIMP_DARKEN_ONLY_MODE,
  GIMP_LIGHTEN_ONLY_MODE,
  GIMP_HUE_MODE,
  GIMP_SATURATION_MODE,
  GIMP_COLOR_MODE,
  GIMP_VALUE_MODE,
  GIMP_DIVIDE_MODE,
  GIMP_DODGE_MODE,
  GIMP_BURN_MODE,
  GIMP_HARDLIGHT_MODE
} GimpLayerModeEffects;
</ENUM>
<ENUM>
<NAME>GimpMaskApplyMode</NAME>
typedef enum
{
  GIMP_APPLY,
  GIMP_DISCARD
} GimpMaskApplyMode;
</ENUM>
<ENUM>
<NAME>GimpMergeType</NAME>
typedef enum
{
  GIMP_EXPAND_AS_NECESSARY,
  GIMP_CLIP_TO_IMAGE,
  GIMP_CLIP_TO_BOTTOM_LAYER,
  GIMP_FLATTEN_IMAGE
} GimpMergeType;
</ENUM>
<ENUM>
<NAME>GimpMessageHandlerType</NAME>
typedef enum
{
  GIMP_MESSAGE_BOX,
  GIMP_CONSOLE,
  GIMP_ERROR_CONSOLE
} GimpMessageHandlerType;
</ENUM>
<ENUM>
<NAME>GimpOrientationType</NAME>
typedef enum
{
  GIMP_HORIZONTAL,
  GIMP_VERTICAL,
  GIMP_UNKNOWN
} GimpOrientationType;
</ENUM>
<ENUM>
<NAME>GimpPaintApplicationMode</NAME>
typedef enum
{
  GIMP_CONTINUOUS,
  GIMP_INCREMENTAL
} GimpPaintApplicationMode;
</ENUM>
<ENUM>
<NAME>GimpRepeatMode</NAME>
typedef enum
{
  GIMP_REPEAT_NONE,
  GIMP_REPEAT_SAWTOOTH,
  GIMP_REPEAT_TRIANGULAR
} GimpRepeatMode;
</ENUM>
<ENUM>
<NAME>GimpRunModeType</NAME>
typedef enum
{
  GIMP_RUN_INTERACTIVE,
  GIMP_RUN_NONINTERACTIVE,
  GIMP_RUN_WITH_LAST_VALS
} GimpRunModeType;
</ENUM>
<ENUM>
<NAME>GimpSizeType</NAME>
typedef enum
{
  GIMP_PIXELS,
  GIMP_POINTS
} GimpSizeType;
</ENUM>
<ENUM>
<NAME>GimpStackTraceMode</NAME>
typedef enum
{
  GIMP_STACK_TRACE_NEVER,
  GIMP_STACK_TRACE_QUERY,
  GIMP_STACK_TRACE_ALWAYS
} GimpStackTraceMode;
</ENUM>
<ENUM>
<NAME>GimpTransferMode</NAME>
typedef enum
{
  GIMP_SHADOWS,
  GIMP_MIDTONES,
  GIMP_HIGHLIGHTS
} GimpTransferMode;
</ENUM>
<ENUM>
<NAME>GimpExportCapabilities</NAME>
typedef enum
{
  GIMP_EXPORT_CAN_HANDLE_RGB                 = 1 << 0,
  GIMP_EXPORT_CAN_HANDLE_GRAY                = 1 << 1,
  GIMP_EXPORT_CAN_HANDLE_INDEXED             = 1 << 2,
  GIMP_EXPORT_CAN_HANDLE_ALPHA               = 1 << 3,
  GIMP_EXPORT_CAN_HANDLE_LAYERS              = 1 << 4,
  GIMP_EXPORT_CAN_HANDLE_LAYERS_AS_ANIMATION = 1 << 5,
  GIMP_EXPORT_NEEDS_ALPHA                    = 1 << 6
} GimpExportCapabilities;
</ENUM>
<ENUM>
<NAME>GimpExportReturnType</NAME>
typedef enum
{
  GIMP_EXPORT_CANCEL,
  GIMP_EXPORT_IGNORE,
  GIMP_EXPORT_EXPORT
} GimpExportReturnType;
</ENUM>
<FUNCTION>
<NAME>gimp_export_image</NAME>
<RETURNS>GimpExportReturnType  </RETURNS>
gint32                 *image_ID,gint32                 *drawable_ID,const gchar            *format_name,GimpExportCapabilities  capabilities
</FUNCTION>
<FUNCTION>
<NAME>gimp_file_load</NAME>
<RETURNS>gint32  </RETURNS>
GimpRunModeType  run_mode,gchar           *filename,gchar           *raw_filename
</FUNCTION>
<FUNCTION>
<NAME>gimp_file_save</NAME>
<RETURNS>gboolean  </RETURNS>
GimpRunModeType  run_mode,gint32           image_ID,gint32           drawable_ID,gchar           *filename,gchar           *raw_filename
</FUNCTION>
<FUNCTION>
<NAME>gimp_temp_name</NAME>
<RETURNS>gchar *</RETURNS>
gchar           *extension
</FUNCTION>
<FUNCTION>
<NAME>gimp_register_magic_load_handler</NAME>
<RETURNS>gboolean  </RETURNS>
gchar           *procedure_name,gchar           *extensions,gchar           *prefixes,gchar           *magics
</FUNCTION>
<FUNCTION>
<NAME>gimp_register_load_handler</NAME>
<RETURNS>gboolean  </RETURNS>
gchar           *procedure_name,gchar           *extensions,gchar           *prefixes
</FUNCTION>
<FUNCTION>
<NAME>gimp_register_save_handler</NAME>
<RETURNS>gboolean  </RETURNS>
gchar           *procedure_name,gchar           *extensions,gchar           *prefixes
</FUNCTION>
<FUNCTION>
<NAME>gimp_floating_sel_remove</NAME>
<RETURNS>gboolean  </RETURNS>
gint32   floating_sel_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_floating_sel_anchor</NAME>
<RETURNS>gboolean  </RETURNS>
gint32   floating_sel_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_floating_sel_to_layer</NAME>
<RETURNS>gboolean  </RETURNS>
gint32   floating_sel_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_floating_sel_attach</NAME>
<RETURNS>gboolean  </RETURNS>
gint32   layer_ID,gint32   drawable_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_floating_sel_rigor</NAME>
<RETURNS>gboolean  </RETURNS>
gint32   floating_sel_ID,gboolean undo
</FUNCTION>
<FUNCTION>
<NAME>gimp_floating_sel_relax</NAME>
<RETURNS>gboolean  </RETURNS>
gint32   floating_sel_ID,gboolean undo
</FUNCTION>
<FUNCTION>
<NAME>gimp_gimprc_query</NAME>
<RETURNS>gchar *</RETURNS>
gchar   *token
</FUNCTION>
<FUNCTION>
<NAME>gimp_gimprc_set</NAME>
<RETURNS>gboolean  </RETURNS>
gchar   *token,gchar   *value
</FUNCTION>
<FUNCTION>
<NAME>gimp_get_monitor_resolution</NAME>
<RETURNS>gboolean  </RETURNS>
gdouble *xres,gdouble *yres
</FUNCTION>
<FUNCTION>
<NAME>gimp_gradients_get_list</NAME>
<RETURNS>gchar **</RETURNS>
gint    *num_gradients
</FUNCTION>
<FUNCTION>
<NAME>gimp_gradients_get_active</NAME>
<RETURNS>gchar *</RETURNS>
void
</FUNCTION>
<FUNCTION>
<NAME>gimp_gradients_set_active</NAME>
<RETURNS>gboolean  </RETURNS>
gchar   *name
</FUNCTION>
<FUNCTION>
<NAME>gimp_gradients_sample_uniform</NAME>
<RETURNS>gdouble *</RETURNS>
gint     num_samples
</FUNCTION>
<FUNCTION>
<NAME>gimp_gradients_sample_custom</NAME>
<RETURNS>gdouble *</RETURNS>
gint     num_samples,gdouble *positions
</FUNCTION>
<FUNCTION>
<NAME>gimp_gradients_get_gradient_data</NAME>
<RETURNS>gchar  *</RETURNS>
gchar    *name,gint     *width,gint      sample_size,gdouble **grad_data
</FUNCTION>
<FUNCTION>
<NAME>gimp_gradients_popup</NAME>
<RETURNS>gboolean  </RETURNS>
gchar    *gradients_callback,gchar    *popup_title,gchar    *initial_gradient,gint      sample_size
</FUNCTION>
<FUNCTION>
<NAME>gimp_gradients_close_popup</NAME>
<RETURNS>gboolean  </RETURNS>
gchar    *gradients_callback
</FUNCTION>
<FUNCTION>
<NAME>gimp_gradients_set_popup</NAME>
<RETURNS>gboolean  </RETURNS>
gchar    *gradients_callback,gchar    *gradient_name
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_add_hguide</NAME>
<RETURNS>gint32  </RETURNS>
gint32 image_ID,gint   yposition
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_add_vguide</NAME>
<RETURNS>gint32  </RETURNS>
gint32 image_ID,gint   xposition
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_delete_guide</NAME>
<RETURNS>gboolean  </RETURNS>
gint32 image_ID,gint32 guide_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_find_next_guide</NAME>
<RETURNS>gint32  </RETURNS>
gint32 image_ID,gint32 guide_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_get_guide_orientation</NAME>
<RETURNS>GimpOrientationType  </RETURNS>
gint32 image_ID,gint32 guide_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_get_guide_position</NAME>
<RETURNS>gint  </RETURNS>
gint32 image_ID,gint32 guide_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_help</NAME>
<RETURNS>gboolean  </RETURNS>
gchar *prog_name,gchar *help_page
</FUNCTION>
<MACRO>
<NAME>gimp_image_convert_rgb</NAME>
#define gimp_image_convert_rgb        gimp_convert_rgb
</MACRO>
<MACRO>
<NAME>gimp_image_convert_grayscale</NAME>
#define gimp_image_convert_grayscale  gimp_convert_grayscale
</MACRO>
<MACRO>
<NAME>gimp_image_convert_indexed</NAME>
#define gimp_image_convert_indexed    gimp_convert_indexed
</MACRO>
<FUNCTION>
<NAME>gimp_image_get_cmap</NAME>
<RETURNS>guchar    *</RETURNS>
gint32          image_ID,gint           *num_colors
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_set_cmap</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          image_ID,guchar         *cmap,gint            num_colors
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_get_thumbnail_data</NAME>
<RETURNS>guchar    *</RETURNS>
gint32          image_ID,gint           *width,gint           *height,gint           *bpp
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_attach_new_parasite</NAME>
<RETURNS>void  </RETURNS>
gint32          image_ID,const gchar    *name,gint            flags,gint            size,const gpointer  data
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_list</NAME>
<RETURNS>gint *</RETURNS>
gint               *num_images
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_new</NAME>
<RETURNS>gint32  </RETURNS>
gint                width,gint                height,GimpImageBaseType   type
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_resize</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,gint                new_width,gint                new_height,gint                offx,gint                offy
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_scale</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,gint                new_width,gint                new_height
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_delete</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_free_shadow</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_get_layers</NAME>
<RETURNS>gint *</RETURNS>
gint32              image_ID,gint               *num_layers
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_get_channels</NAME>
<RETURNS>gint *</RETURNS>
gint32              image_ID,gint               *num_channels
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_unset_active_channel</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_pick_correlate_layer</NAME>
<RETURNS>gint32  </RETURNS>
gint32              image_ID,gint                x,gint                y
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_raise_layer</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,gint32              layer_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_lower_layer</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,gint32              layer_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_raise_layer_to_top</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,gint32              layer_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_lower_layer_to_bottom</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,gint32              layer_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_merge_visible_layers</NAME>
<RETURNS>gint32  </RETURNS>
gint32              image_ID,GimpMergeType       merge_type
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_merge_down</NAME>
<RETURNS>gint32  </RETURNS>
gint32              image_ID,gint32              merge_layer_ID,GimpMergeType       merge_type
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_flatten</NAME>
<RETURNS>gint32  </RETURNS>
gint32              image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_add_layer</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,gint32              layer_ID,gint                position
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_remove_layer</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,gint32              layer_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_add_layer_mask</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,gint32              layer_ID,gint32              mask_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_remove_layer_mask</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,gint32              layer_ID,GimpMaskApplyMode   mode
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_raise_channel</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,gint32              channel_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_lower_channel</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,gint32              layer_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_add_channel</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,gint32              channel_ID,gint                position
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_remove_channel</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,gint32              channel_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_active_drawable</NAME>
<RETURNS>gint32  </RETURNS>
gint32              image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_base_type</NAME>
<RETURNS>GimpImageBaseType  </RETURNS>
gint32              image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_undo_is_enabled</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_undo_enable</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_undo_disable</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_undo_freeze</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_undo_thaw</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_clean_all</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_floating_selection</NAME>
<RETURNS>gint32  </RETURNS>
gint32              image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_floating_sel_attached_to</NAME>
<RETURNS>gint32  </RETURNS>
gint32              image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_set_tattoo_state</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,gint                tattoo
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_get_tattoo_state</NAME>
<RETURNS>gint  </RETURNS>
gint32              image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_duplicate</NAME>
<RETURNS>gint32  </RETURNS>
gint32              image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_width</NAME>
<RETURNS>gint  </RETURNS>
gint32              image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_height</NAME>
<RETURNS>gint  </RETURNS>
gint32              image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_get_active_layer</NAME>
<RETURNS>gint32  </RETURNS>
gint32              image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_set_active_layer</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,gint32              active_layer_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_get_active_channel</NAME>
<RETURNS>gint32  </RETURNS>
gint32              image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_set_active_channel</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,gint32              active_channel_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_get_selection</NAME>
<RETURNS>gint32  </RETURNS>
gint32              image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_get_component_active</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,GimpChannelType     component
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_set_component_active</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,GimpChannelType     component,gboolean            active
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_get_component_visible</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,GimpChannelType     component
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_set_component_visible</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,GimpChannelType     component,gboolean            visible
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_get_filename</NAME>
<RETURNS>gchar *</RETURNS>
gint32              image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_set_filename</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,gchar              *filename
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_get_resolution</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,gdouble            *xresolution,gdouble            *yresolution
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_set_resolution</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,gdouble             xresolution,gdouble             yresolution
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_get_unit</NAME>
<RETURNS>GimpUnit  </RETURNS>
gint32              image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_set_unit</NAME>
<RETURNS>gboolean  </RETURNS>
gint32              image_ID,GimpUnit            unit
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_get_layer_by_tattoo</NAME>
<RETURNS>gint32  </RETURNS>
gint32              image_ID,gint                tattoo
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_get_channel_by_tattoo</NAME>
<RETURNS>gint32  </RETURNS>
gint32              image_ID,gint                tattoo
</FUNCTION>
<MACRO>
<NAME>gimp_layer_get_mask_id</NAME>
#define gimp_layer_get_mask_id               gimp_layer_mask
</MACRO>
<MACRO>
<NAME>gimp_layer_get_image_id</NAME>
#define gimp_layer_get_image_id              gimp_drawable_image
</MACRO>
<MACRO>
<NAME>gimp_layer_is_floating_selection</NAME>
#define gimp_layer_is_floating_selection     gimp_layer_is_floating_sel
</MACRO>
<MACRO>
<NAME>gimp_layer_get_preserve_transparency</NAME>
#define gimp_layer_get_preserve_transparency gimp_layer_get_preserve_trans
</MACRO>
<MACRO>
<NAME>gimp_layer_set_preserve_transparency</NAME>
#define gimp_layer_set_preserve_transparency gimp_layer_set_preserve_trans
</MACRO>
<FUNCTION>
<NAME>gimp_layer_new</NAME>
<RETURNS>gint32  </RETURNS>
gint32                image_ID,gchar                *name,gint                  width,gint                  height,GimpImageType         type,gdouble               opacity,GimpLayerModeEffects  mode
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_copy</NAME>
<RETURNS>gint32  </RETURNS>
gint32                layer_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_create_mask</NAME>
<RETURNS>gint32  </RETURNS>
gint32                layer_ID,GimpAddMaskType       mask_type
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_scale</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                layer_ID,gint                  new_width,gint                  new_height,gboolean              local_origin
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_resize</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                layer_ID,gint                  new_width,gint                  new_height,gint                  offx,gint                  offy
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_delete</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                layer_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_translate</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                layer_ID,gint                  offx,gint                  offy
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_add_alpha</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                layer_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_set_offsets</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                layer_ID,gint                  offx,gint                  offy
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_mask</NAME>
<RETURNS>gint32  </RETURNS>
gint32                layer_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_is_floating_sel</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                layer_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_get_name</NAME>
<RETURNS>gchar *</RETURNS>
gint32                layer_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_set_name</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                layer_ID,gchar                *name
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_get_visible</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                layer_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_set_visible</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                layer_ID,gboolean              visible
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_get_preserve_trans</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                layer_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_set_preserve_trans</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                layer_ID,gboolean              preserve_trans
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_get_apply_mask</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                layer_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_set_apply_mask</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                layer_ID,gboolean              apply_mask
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_get_show_mask</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                layer_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_set_show_mask</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                layer_ID,gboolean              show_mask
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_get_edit_mask</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                layer_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_set_edit_mask</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                layer_ID,gboolean              edit_mask
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_get_opacity</NAME>
<RETURNS>gdouble  </RETURNS>
gint32                layer_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_set_opacity</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                layer_ID,gdouble               opacity
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_get_mode</NAME>
<RETURNS>GimpLayerModeEffects  </RETURNS>
gint32                layer_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_set_mode</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                layer_ID,GimpLayerModeEffects  mode
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_get_linked</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                layer_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_set_linked</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                layer_ID,gboolean              linked
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_get_tattoo</NAME>
<RETURNS>gint  </RETURNS>
gint32                layer_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_set_tattoo</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                layer_ID,gint                  tattoo
</FUNCTION>
<USER_FUNCTION>
<NAME>GimpConstraintFunc</NAME>
<RETURNS>gint </RETURNS>
gint32    image_id,
				       gint32    drawable_id,
				       gpointer  data
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>GimpMenuCallback</NAME>
<RETURNS>void </RETURNS>
gint32    id,
				       gpointer  data
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>GimpRunBrushCallback</NAME>
<RETURNS>void </RETURNS>
gchar    *name,
					  gdouble   opacity,
					  gint      spacing,
					  gint      paint_mode,
					  gint      width,
					  gint      height,
					  gchar    *mask_data,
					  gboolean  dialog_closing,
					  gpointer  user_data
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>GimpRunPatternCallback</NAME>
<RETURNS>void </RETURNS>
gchar    *name,
					  gint      width,
					  gint      height,
					  gint      bpp,
					  gchar    *mask_data,
					  gboolean  dialog_closing,
					  gpointer  user_data
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>GimpRunGradientCallback</NAME>
<RETURNS>void </RETURNS>
gchar    *name,
					  gint      width,
					  gdouble  *grad_data,
					  gboolean  dialog_closing,
					  gpointer  user_data
</USER_FUNCTION>
<FUNCTION>
<NAME>gimp_image_menu_new</NAME>
<RETURNS>GtkWidget  *</RETURNS>
GimpConstraintFunc constraint,GimpMenuCallback   callback,gpointer           data,gint32             active_image
</FUNCTION>
<FUNCTION>
<NAME>gimp_layer_menu_new</NAME>
<RETURNS>GtkWidget  *</RETURNS>
GimpConstraintFunc constraint,GimpMenuCallback   callback,gpointer           data,gint32             active_layer
</FUNCTION>
<FUNCTION>
<NAME>gimp_channel_menu_new</NAME>
<RETURNS>GtkWidget  *</RETURNS>
GimpConstraintFunc constraint,GimpMenuCallback   callback,gpointer           data,gint32             active_channel
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_menu_new</NAME>
<RETURNS>GtkWidget  *</RETURNS>
GimpConstraintFunc constraint,GimpMenuCallback   callback,gpointer           data,gint32             active_drawable
</FUNCTION>
<FUNCTION>
<NAME>gimp_interactive_selection_brush</NAME>
<RETURNS>gchar     *</RETURNS>
gchar     *dialogname,gchar     *brush_name,gdouble    opacity,gint       spacing,gint       paint_mode,GimpRunBrushCallback  callback,gpointer   data
</FUNCTION>
<FUNCTION>
<NAME>gimp_brush_select_widget</NAME>
<RETURNS>GtkWidget  *</RETURNS>
gchar     *dname,gchar     *ibrush,gdouble    opacity,gint       spacing,gint       paint_mode,GimpRunBrushCallback  cback,gpointer   data
</FUNCTION>
<FUNCTION>
<NAME>gimp_brush_select_widget_set_popup</NAME>
<RETURNS>void  </RETURNS>
GtkWidget *widget,gchar     *pname,gdouble    opacity,gint       spacing,gint       paint_mode
</FUNCTION>
<FUNCTION>
<NAME>gimp_brush_select_widget_close_popup</NAME>
<RETURNS>void  </RETURNS>
GtkWidget *widget
</FUNCTION>
<FUNCTION>
<NAME>gimp_interactive_selection_pattern</NAME>
<RETURNS>gchar    *</RETURNS>
gchar     *dialogtitle,gchar     *pattern_name,GimpRunPatternCallback  callback,gpointer   data
</FUNCTION>
<FUNCTION>
<NAME>gimp_pattern_select_widget</NAME>
<RETURNS>GtkWidget  *</RETURNS>
gchar     *dname,gchar     *ipattern,GimpRunPatternCallback  cback,gpointer    data
</FUNCTION>
<FUNCTION>
<NAME>gimp_pattern_select_widget_close_popup</NAME>
<RETURNS>void  </RETURNS>
GtkWidget *widget
</FUNCTION>
<FUNCTION>
<NAME>gimp_pattern_select_widget_set_popup</NAME>
<RETURNS>void  </RETURNS>
GtkWidget *widget,gchar     *pname
</FUNCTION>
<FUNCTION>
<NAME>gimp_interactive_selection_gradient</NAME>
<RETURNS>gchar    *</RETURNS>
gchar      *dialogtitle,gchar      *gradient_name,gint        sample_sz,GimpRunGradientCallback  callback,gpointer    data
</FUNCTION>
<FUNCTION>
<NAME>gimp_gradient_select_widget</NAME>
<RETURNS>GtkWidget  *</RETURNS>
gchar      *gname,gchar      *igradient,GimpRunGradientCallback  cback,gpointer    data
</FUNCTION>
<FUNCTION>
<NAME>gimp_gradient_select_widget_close_popup</NAME>
<RETURNS>void  </RETURNS>
GtkWidget  *widget
</FUNCTION>
<FUNCTION>
<NAME>gimp_gradient_select_widget_set_popup</NAME>
<RETURNS>void  </RETURNS>
GtkWidget  *widget,gchar      *gname
</FUNCTION>
<FUNCTION>
<NAME>gimp_message</NAME>
<RETURNS>gboolean  </RETURNS>
gchar                  *message
</FUNCTION>
<FUNCTION>
<NAME>gimp_message_get_handler</NAME>
<RETURNS>GimpMessageHandlerType  </RETURNS>
void
</FUNCTION>
<FUNCTION>
<NAME>gimp_message_set_handler</NAME>
<RETURNS>gboolean  </RETURNS>
GimpMessageHandlerType  handler
</FUNCTION>
<FUNCTION>
<NAME>gimp_version</NAME>
<RETURNS>gchar *</RETURNS>
void
</FUNCTION>
<ENUM>
<NAME>GimpModuleStatus</NAME>
typedef enum
{
  GIMP_MODULE_OK,
  GIMP_MODULE_UNLOAD
} GimpModuleStatus;
</ENUM>
<STRUCT>
<NAME>GimpModuleInfo</NAME>
</STRUCT>
<STRUCT>
<NAME>GimpModuleInfo</NAME>
struct GimpModuleInfo
{
  gpointer     shutdown_data;

  const gchar *purpose;
  const gchar *author;
  const gchar *version;
  const gchar *copyright;
  const gchar *date;
};
</STRUCT>
<USER_FUNCTION>
<NAME>GimpModuleInitFunc</NAME>
<RETURNS>GimpModuleStatus </RETURNS>
GimpModuleInfo **module_info
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>GimpModuleCompletedCB</NAME>
<RETURNS>void </RETURNS>
gpointer               completed_data
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>GimpModuleUnloadFunc</NAME>
<RETURNS>void </RETURNS>
gpointer               shutdown_data,
					GimpModuleCompletedCB  completed_cb,
					gpointer               completed_data
</USER_FUNCTION>
<FUNCTION>
<NAME>gimp_palette_get_foreground</NAME>
<RETURNS>gboolean  </RETURNS>
GimpRGB *foreground
</FUNCTION>
<FUNCTION>
<NAME>gimp_palette_get_background</NAME>
<RETURNS>gboolean  </RETURNS>
GimpRGB *background
</FUNCTION>
<FUNCTION>
<NAME>gimp_palette_set_foreground</NAME>
<RETURNS>gboolean  </RETURNS>
GimpRGB *foreground
</FUNCTION>
<FUNCTION>
<NAME>gimp_palette_set_background</NAME>
<RETURNS>gboolean  </RETURNS>
GimpRGB *background
</FUNCTION>
<FUNCTION>
<NAME>gimp_palette_set_default_colors</NAME>
<RETURNS>gboolean  </RETURNS>
void
</FUNCTION>
<FUNCTION>
<NAME>gimp_palette_swap_colors</NAME>
<RETURNS>gboolean  </RETURNS>
void
</FUNCTION>
<FUNCTION>
<NAME>gimp_palette_refresh</NAME>
<RETURNS>gboolean  </RETURNS>
void
</FUNCTION>
<FUNCTION>
<NAME>gimp_parasite_find</NAME>
<RETURNS>GimpParasite *</RETURNS>
gchar          *name
</FUNCTION>
<FUNCTION>
<NAME>gimp_parasite_attach</NAME>
<RETURNS>gboolean  </RETURNS>
GimpParasite   *parasite
</FUNCTION>
<FUNCTION>
<NAME>gimp_parasite_detach</NAME>
<RETURNS>gboolean  </RETURNS>
gchar          *name
</FUNCTION>
<FUNCTION>
<NAME>gimp_parasite_list</NAME>
<RETURNS>gboolean  </RETURNS>
gint           *num_parasites,gchar        ***parasites
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_parasite_find</NAME>
<RETURNS>GimpParasite *</RETURNS>
gint32          drawable_ID,gchar          *name
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_parasite_attach</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          drawable_ID,GimpParasite   *parasite
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_parasite_detach</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          drawable_ID,gchar          *name
</FUNCTION>
<FUNCTION>
<NAME>gimp_drawable_parasite_list</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          drawable_ID,gint           *num_parasites,gchar        ***parasites
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_parasite_find</NAME>
<RETURNS>GimpParasite *</RETURNS>
gint32          image_ID,gchar          *name
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_parasite_attach</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          image_ID,GimpParasite   *parasite
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_parasite_detach</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          image_ID,gchar          *name
</FUNCTION>
<FUNCTION>
<NAME>gimp_image_parasite_list</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          image_ID,gint           *num_parasites,gchar        ***parasites
</FUNCTION>
<FUNCTION>
<NAME>gimp_path_list</NAME>
<RETURNS>gchar **</RETURNS>
gint32    image_ID,gint     *num_paths
</FUNCTION>
<FUNCTION>
<NAME>gimp_path_get_points</NAME>
<RETURNS>gint  </RETURNS>
gint32    image_ID,gchar    *pathname,gint     *path_closed,gint     *num_path_point_details,gdouble **points_pairs
</FUNCTION>
<FUNCTION>
<NAME>gimp_path_get_current</NAME>
<RETURNS>gchar *</RETURNS>
gint32    image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_path_set_current</NAME>
<RETURNS>gboolean  </RETURNS>
gint32    image_ID,gchar    *set_current_path_name
</FUNCTION>
<FUNCTION>
<NAME>gimp_path_set_points</NAME>
<RETURNS>gboolean  </RETURNS>
gint32    image_ID,gchar    *pathname,gint      ptype,gint      num_path_points,gdouble  *points_pairs
</FUNCTION>
<FUNCTION>
<NAME>gimp_path_stroke_current</NAME>
<RETURNS>gboolean  </RETURNS>
gint32    image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_path_get_point_at_dist</NAME>
<RETURNS>gint  </RETURNS>
gint32    image_ID,gdouble   distance,gint     *y_point,gdouble  *gradient
</FUNCTION>
<FUNCTION>
<NAME>gimp_path_get_tattoo</NAME>
<RETURNS>gint  </RETURNS>
gint32    image_ID,gchar    *pathname
</FUNCTION>
<FUNCTION>
<NAME>gimp_get_path_by_tattoo</NAME>
<RETURNS>gchar *</RETURNS>
gint32    image_ID,gint      tattoo
</FUNCTION>
<FUNCTION>
<NAME>gimp_path_delete</NAME>
<RETURNS>gboolean  </RETURNS>
gint32    image_ID,gchar    *path_name_to_del
</FUNCTION>
<FUNCTION>
<NAME>gimp_path_get_locked</NAME>
<RETURNS>gint  </RETURNS>
gint32    image_ID,gchar    *pathname
</FUNCTION>
<FUNCTION>
<NAME>gimp_path_set_locked</NAME>
<RETURNS>gboolean  </RETURNS>
gint32    image_ID,gchar    *pathname,gint      lockstatus
</FUNCTION>
<FUNCTION>
<NAME>gimp_path_set_tattoo</NAME>
<RETURNS>gboolean  </RETURNS>
gint32    image_ID,gchar    *pathname,gint      tattovalue
</FUNCTION>
<FUNCTION>
<NAME>gimp_patterns_get_pattern_data</NAME>
<RETURNS>gchar *</RETURNS>
gchar   *name,gint    *width,gint    *height,gint    *mask_bpp,gint    *length,guint8 **mask_data
</FUNCTION>
<FUNCTION>
<NAME>gimp_patterns_popup</NAME>
<RETURNS>gboolean  </RETURNS>
gchar *pattern_callback,gchar *popup_title,gchar *initial_pattern
</FUNCTION>
<FUNCTION>
<NAME>gimp_patterns_close_popup</NAME>
<RETURNS>gboolean  </RETURNS>
gchar *pattern_callback
</FUNCTION>
<FUNCTION>
<NAME>gimp_patterns_set_popup</NAME>
<RETURNS>gboolean  </RETURNS>
gchar *pattern_callback,gchar *pattern_name
</FUNCTION>
<STRUCT>
<NAME>GimpPixelRgn</NAME>
struct GimpPixelRgn
{
  guchar       *data;          /* pointer to region data */
  GimpDrawable *drawable;      /* pointer to drawable */
  guint         bpp;           /* bytes per pixel */
  guint         rowstride;     /* bytes per pixel row */
  guint         x, y;          /* origin */
  guint         w, h;          /* width and height of region */
  guint         dirty : 1;     /* will this region be dirtied? */
  guint         shadow : 1;    /* will this region use the shadow or normal tiles */
  guint         process_count; /* used internally */
};
</STRUCT>
<FUNCTION>
<NAME>gimp_pixel_rgn_init</NAME>
<RETURNS>void  </RETURNS>
GimpPixelRgn  *pr,GimpDrawable  *drawable,gint           x,gint           y,gint           width,gint           height,gint           dirty,gint           shadow
</FUNCTION>
<FUNCTION>
<NAME>gimp_pixel_rgn_resize</NAME>
<RETURNS>void  </RETURNS>
GimpPixelRgn  *pr,gint           x,gint           y,gint           width,gint           height
</FUNCTION>
<FUNCTION>
<NAME>gimp_pixel_rgn_get_pixel</NAME>
<RETURNS>void  </RETURNS>
GimpPixelRgn  *pr,guchar        *buf,gint           x,gint           y
</FUNCTION>
<FUNCTION>
<NAME>gimp_pixel_rgn_get_row</NAME>
<RETURNS>void  </RETURNS>
GimpPixelRgn  *pr,guchar        *buf,gint           x,gint           y,gint           width
</FUNCTION>
<FUNCTION>
<NAME>gimp_pixel_rgn_get_col</NAME>
<RETURNS>void  </RETURNS>
GimpPixelRgn  *pr,guchar        *buf,gint           x,gint           y,gint           height
</FUNCTION>
<FUNCTION>
<NAME>gimp_pixel_rgn_get_rect</NAME>
<RETURNS>void  </RETURNS>
GimpPixelRgn  *pr,guchar        *buf,gint           x,gint           y,gint           width,gint           height
</FUNCTION>
<FUNCTION>
<NAME>gimp_pixel_rgn_set_pixel</NAME>
<RETURNS>void  </RETURNS>
GimpPixelRgn  *pr,guchar        *buf,gint           x,gint           y
</FUNCTION>
<FUNCTION>
<NAME>gimp_pixel_rgn_set_row</NAME>
<RETURNS>void  </RETURNS>
GimpPixelRgn  *pr,guchar        *buf,gint           x,gint           y,gint           width
</FUNCTION>
<FUNCTION>
<NAME>gimp_pixel_rgn_set_col</NAME>
<RETURNS>void  </RETURNS>
GimpPixelRgn  *pr,guchar        *buf,gint           x,gint           y,gint           height
</FUNCTION>
<FUNCTION>
<NAME>gimp_pixel_rgn_set_rect</NAME>
<RETURNS>void  </RETURNS>
GimpPixelRgn  *pr,guchar        *buf,gint           x,gint           y,gint           width,gint           height
</FUNCTION>
<FUNCTION>
<NAME>gimp_pixel_rgns_register</NAME>
<RETURNS>gpointer  </RETURNS>
gint           nrgns,...
</FUNCTION>
<FUNCTION>
<NAME>gimp_pixel_rgns_register2</NAME>
<RETURNS>gpointer  </RETURNS>
gint           nrgns,GimpPixelRgn **prs
</FUNCTION>
<FUNCTION>
<NAME>gimp_pixel_rgns_process</NAME>
<RETURNS>gpointer  </RETURNS>
gpointer       pri_ptr
</FUNCTION>
<FUNCTION>
<NAME>gimp_progress_init</NAME>
<RETURNS>gboolean  </RETURNS>
gchar   *message
</FUNCTION>
<FUNCTION>
<NAME>gimp_progress_update</NAME>
<RETURNS>gboolean  </RETURNS>
gdouble  percentage
</FUNCTION>
<FUNCTION>
<NAME>gimp_temp_PDB_name</NAME>
<RETURNS>gchar *</RETURNS>
void
</FUNCTION>
<FUNCTION>
<NAME>gimp_plugin_domain_register</NAME>
<RETURNS>gboolean  </RETURNS>
gchar   *domain_name,gchar   *domain_path
</FUNCTION>
<FUNCTION>
<NAME>gimp_plugin_help_register</NAME>
<RETURNS>gboolean  </RETURNS>
gchar   *help_path
</FUNCTION>
<FUNCTION>
<NAME>gimp_procedural_db_proc_info</NAME>
<RETURNS>gboolean  </RETURNS>
gchar            *procedure,gchar           **blurb,gchar           **help,gchar           **author,gchar           **copyright,gchar           **date,GimpPDBProcType  *proc_type,gint             *num_args,gint             *num_values,GimpParamDef    **args,GimpParamDef    **return_vals
</FUNCTION>
<FUNCTION>
<NAME>gimp_procedural_db_get_data</NAME>
<RETURNS>gboolean  </RETURNS>
gchar            *identifier,gpointer          data
</FUNCTION>
<FUNCTION>
<NAME>gimp_procedural_db_set_data</NAME>
<RETURNS>gboolean  </RETURNS>
gchar            *identifier,gpointer          data,guint32           bytes
</FUNCTION>
<FUNCTION>
<NAME>gimp_procedural_db_dump</NAME>
<RETURNS>gboolean  </RETURNS>
gchar             *filename
</FUNCTION>
<FUNCTION>
<NAME>gimp_procedural_db_query</NAME>
<RETURNS>gboolean  </RETURNS>
gchar             *name,gchar             *blurb,gchar             *help,gchar             *author,gchar             *copyright,gchar             *date,gchar             *proc_type,gint              *num_matches,gchar           ***procedure_names
</FUNCTION>
<FUNCTION>
<NAME>gimp_procedural_db_proc_arg</NAME>
<RETURNS>gboolean  </RETURNS>
gchar             *procedure,gint               arg_num,GimpPDBArgType    *arg_type,gchar            **arg_name,gchar            **arg_desc
</FUNCTION>
<FUNCTION>
<NAME>gimp_procedural_db_proc_val</NAME>
<RETURNS>gboolean  </RETURNS>
gchar             *procedure,gint               val_num,GimpPDBArgType    *val_type,gchar            **val_name,gchar            **val_desc
</FUNCTION>
<FUNCTION>
<NAME>gimp_procedural_db_get_data_size</NAME>
<RETURNS>gint  </RETURNS>
gchar             *identifier
</FUNCTION>
<FUNCTION>
<NAME>gimp_selection_float</NAME>
<RETURNS>gint32  </RETURNS>
gint32 image_ID,gint32 drawable_ID,gint   offx,gint   offy
</FUNCTION>
<FUNCTION>
<NAME>gimp_selection_bounds</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          image_ID,gboolean       *non_empty,gint           *x1,gint           *y1,gint           *x2,gint           *y2
</FUNCTION>
<FUNCTION>
<NAME>gimp_selection_value</NAME>
<RETURNS>gint  </RETURNS>
gint32          image_ID,gint            x,gint            y
</FUNCTION>
<FUNCTION>
<NAME>gimp_selection_is_empty</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_selection_translate</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          image_ID,gint            offx,gint            offy
</FUNCTION>
<FUNCTION>
<NAME>gimp_selection_clear</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_selection_invert</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_selection_sharpen</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_selection_all</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_selection_none</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_selection_feather</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          image_ID,gdouble         radius
</FUNCTION>
<FUNCTION>
<NAME>gimp_selection_border</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          image_ID,gint            radius
</FUNCTION>
<FUNCTION>
<NAME>gimp_selection_grow</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          image_ID,gint            steps
</FUNCTION>
<FUNCTION>
<NAME>gimp_selection_shrink</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          image_ID,gint            radius
</FUNCTION>
<FUNCTION>
<NAME>gimp_selection_layer_alpha</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          layer_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_selection_load</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          channel_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_selection_save</NAME>
<RETURNS>gint32  </RETURNS>
gint32          image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_selection_combine</NAME>
<RETURNS>gboolean  </RETURNS>
gint32          channel_ID,GimpChannelOps  operation
</FUNCTION>
<FUNCTION>
<NAME>gimp_text_fontname</NAME>
<RETURNS>gint32  </RETURNS>
gint32        image_ID,gint32        drawable_ID,gdouble       x,gdouble       y,gchar        *text,gint          border,gboolean      antialias,gdouble       size,GimpSizeType  size_type,gchar        *fontname
</FUNCTION>
<FUNCTION>
<NAME>gimp_text_get_extents_fontname</NAME>
<RETURNS>gboolean  </RETURNS>
gchar        *text,gdouble       size,GimpSizeType  size_type,gchar        *fontname,gint         *width,gint         *height,gint         *ascent,gint         *descent
</FUNCTION>
<FUNCTION>
<NAME>gimp_text</NAME>
<RETURNS>gint32  </RETURNS>
gint32        image_ID,gint32        drawable_ID,gdouble       x,gdouble       y,gchar        *text,gint          border,gboolean      antialias,gdouble       size,GimpSizeType  size_type,gchar        *foundry,gchar        *family,gchar        *weight,gchar        *slant,gchar        *set_width,gchar        *spacing,gchar        *registry,gchar        *encoding
</FUNCTION>
<FUNCTION>
<NAME>gimp_text_get_extents</NAME>
<RETURNS>gboolean  </RETURNS>
gchar        *text,gdouble       size,GimpSizeType  size_type,gchar        *foundry,gchar        *family,gchar        *weight,gchar        *slant,gchar        *set_width,gchar        *spacing,gchar        *registry,gchar        *encoding,gint         *width,gint         *height,gint         *ascent,gint         *descent
</FUNCTION>
<STRUCT>
<NAME>GimpTile</NAME>
struct GimpTile
{
  guint         ewidth;     /* the effective width of the tile */
  guint         eheight;    /* the effective height of the tile */
  guint         bpp;        /* the bytes per pixel (1, 2, 3 or 4 ) */
  guint         tile_num;   /* the number of this tile within the drawable */
  guint16       ref_count;  /* reference count for the tile */
  guint         dirty : 1;  /* is the tile dirty? has it been modified? */
  guint         shadow: 1;  /* is this a shadow tile */
  guchar       *data;       /* the pixel data for the tile */
  GimpDrawable *drawable;   /* the drawable this tile came from */
};
</STRUCT>
<FUNCTION>
<NAME>gimp_tile_ref</NAME>
<RETURNS>void  </RETURNS>
GimpTile  *tile
</FUNCTION>
<FUNCTION>
<NAME>gimp_tile_ref_zero</NAME>
<RETURNS>void  </RETURNS>
GimpTile  *tile
</FUNCTION>
<FUNCTION>
<NAME>gimp_tile_unref</NAME>
<RETURNS>void  </RETURNS>
GimpTile  *tile,gboolean   dirty
</FUNCTION>
<FUNCTION>
<NAME>gimp_tile_flush</NAME>
<RETURNS>void  </RETURNS>
GimpTile  *tile
</FUNCTION>
<FUNCTION>
<NAME>gimp_tile_cache_size</NAME>
<RETURNS>void  </RETURNS>
gulong     kilobytes
</FUNCTION>
<FUNCTION>
<NAME>gimp_tile_cache_ntiles</NAME>
<RETURNS>void  </RETURNS>
gulong     ntiles
</FUNCTION>
<FUNCTION>
<NAME>gimp_tile_width</NAME>
<RETURNS>guint  </RETURNS>
void
</FUNCTION>
<FUNCTION>
<NAME>gimp_tile_height</NAME>
<RETURNS>guint  </RETURNS>
void
</FUNCTION>
<FUNCTION>
<NAME>gimp_airbrush</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                    drawable_ID,gdouble                   pressure,gint                      num_strokes,gdouble                  *strokes
</FUNCTION>
<FUNCTION>
<NAME>gimp_airbrush_default</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                    drawable_ID,gint                      num_strokes,gdouble                  *strokes
</FUNCTION>
<FUNCTION>
<NAME>gimp_blend</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                    drawable_ID,GimpBlendMode             blend_mode,GimpLayerModeEffects      paint_mode,GimpGradientType          gradient_type,gdouble                   opacity,gdouble                   offset,GimpRepeatMode            repeat,gboolean                  supersample,gint                      max_depth,gdouble                   threshold,gdouble                   x1,gdouble                   y1,gdouble                   x2,gdouble                   y2
</FUNCTION>
<FUNCTION>
<NAME>gimp_bucket_fill</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                    drawable_ID,GimpBucketFillMode        fill_mode,GimpLayerModeEffects      paint_mode,gdouble                   opacity,gdouble                   threshold,gboolean                  sample_merged,gdouble                   x,gdouble                   y
</FUNCTION>
<FUNCTION>
<NAME>gimp_by_color_select</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                    drawable_ID,GimpRGB                  *color,gint                      threshold,GimpChannelOps            operation,gboolean                  antialias,gboolean                  feather,gdouble                   feather_radius,gboolean                  sample_merged
</FUNCTION>
<FUNCTION>
<NAME>gimp_clone</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                    drawable_ID,gint32                    src_drawable_ID,GimpCloneType             clone_type,gdouble                   src_x,gdouble                   src_y,gint                      num_strokes,gdouble                  *strokes
</FUNCTION>
<FUNCTION>
<NAME>gimp_clone_default</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                    drawable_ID,gint                      num_strokes,gdouble                  *strokes
</FUNCTION>
<FUNCTION>
<NAME>gimp_color_picker</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                    image_ID,gint32                    drawable_ID,gdouble                   x,gdouble                   y,gboolean                  sample_merged,gboolean                  sample_average,gdouble                   average_radius,gboolean                  save_color,GimpRGB                  *color
</FUNCTION>
<FUNCTION>
<NAME>gimp_convolve</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                    drawable_ID,gdouble                   pressure,GimpConvolveType          convolve_type,gint                      num_strokes,gdouble                  *strokes
</FUNCTION>
<FUNCTION>
<NAME>gimp_convolve_default</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                    drawable_ID,gint                      num_strokes,gdouble                  *strokes
</FUNCTION>
<FUNCTION>
<NAME>gimp_crop</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                    image_ID,gint                      new_width,gint                      new_height,gint                      offx,gint                      offy
</FUNCTION>
<FUNCTION>
<NAME>gimp_dodgeburn</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                    drawable_ID,gdouble                   exposure,GimpDodgeBurnType         dodgeburn_type,GimpDodgeBurnMode         dodgeburn_mode,gint                      num_strokes,gdouble                  *strokes
</FUNCTION>
<FUNCTION>
<NAME>gimp_dodgeburn_default</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                    drawable_ID,gint                      num_strokes,gdouble                  *strokes
</FUNCTION>
<FUNCTION>
<NAME>gimp_ellipse_select</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                    image_ID,gdouble                   x,gdouble                   y,gdouble                   width,gdouble                   height,GimpChannelOps            operation,gboolean                  antialias,gboolean                  feather,gdouble                   feather_radius
</FUNCTION>
<FUNCTION>
<NAME>gimp_eraser</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                    drawable_ID,gint                      num_strokes,gdouble                  *strokes,GimpBrushApplicationMode  hardness,GimpPaintApplicationMode  method
</FUNCTION>
<FUNCTION>
<NAME>gimp_eraser_default</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                    drawable_ID,gint                      num_strokes,gdouble                  *strokes
</FUNCTION>
<FUNCTION>
<NAME>gimp_flip</NAME>
<RETURNS>gint32  </RETURNS>
gint32                    drawable_ID,GimpOrientationType       flip_type
</FUNCTION>
<FUNCTION>
<NAME>gimp_free_select</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                    image_ID,gint                      num_segs,gdouble                  *segs,GimpChannelOps            operation,gboolean                  antialias,gboolean                  feather,gdouble                   feather_radius
</FUNCTION>
<FUNCTION>
<NAME>gimp_fuzzy_select</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                    drawable_ID,gdouble                   x,gdouble                   y,gint                      threshold,GimpChannelOps            operation,gboolean                  antialias,gboolean                  feather,gdouble                   feather_radius,gboolean                  sample_merged
</FUNCTION>
<FUNCTION>
<NAME>gimp_paintbrush</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                    drawable_ID,gdouble                   fade_out,gint                      num_strokes,gdouble                  *strokes,GimpPaintApplicationMode  method,gdouble                   gradient_length
</FUNCTION>
<FUNCTION>
<NAME>gimp_paintbrush_default</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                    drawable_ID,gint                      num_strokes,gdouble                  *strokes
</FUNCTION>
<FUNCTION>
<NAME>gimp_pencil</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                    drawable_ID,gint                      num_strokes,gdouble                  *strokes
</FUNCTION>
<FUNCTION>
<NAME>gimp_perspective</NAME>
<RETURNS>gint32  </RETURNS>
gint32                    drawable_ID,gboolean                  interpolation,gdouble                   x0,gdouble                   y0,gdouble                   x1,gdouble                   y1,gdouble                   x2,gdouble                   y2,gdouble                   x3,gdouble                   y3
</FUNCTION>
<FUNCTION>
<NAME>gimp_rect_select</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                    image_ID,gdouble                   x,gdouble                   y,gdouble                   width,gdouble                   height,GimpChannelOps            operation,gboolean                  feather,gdouble                   feather_radius
</FUNCTION>
<FUNCTION>
<NAME>gimp_rotate</NAME>
<RETURNS>gint32  </RETURNS>
gint32                    drawable_ID,gboolean                  interpolation,gdouble                   angle
</FUNCTION>
<FUNCTION>
<NAME>gimp_scale</NAME>
<RETURNS>gint32  </RETURNS>
gint32                    drawable_ID,gboolean                  interpolation,gdouble                   x0,gdouble                   y0,gdouble                   x1,gdouble                   y1
</FUNCTION>
<FUNCTION>
<NAME>gimp_shear</NAME>
<RETURNS>gint32  </RETURNS>
gint32                    drawable_ID,gboolean                  interpolation,GimpOrientationType       shear_type,gdouble                   magnitude
</FUNCTION>
<FUNCTION>
<NAME>gimp_smudge</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                    drawable_ID,gdouble                   pressure,gint                      num_strokes,gdouble                  *strokes
</FUNCTION>
<FUNCTION>
<NAME>gimp_smudge_default</NAME>
<RETURNS>gboolean  </RETURNS>
gint32                    drawable_ID,gint                      num_strokes,gdouble                  *strokes
</FUNCTION>
<FUNCTION>
<NAME>gimp_transform_2d</NAME>
<RETURNS>gint32  </RETURNS>
gint32                    drawable_ID,gboolean                  interpolation,gdouble                   source_x,gdouble                   source_y,gdouble                   scale_x,gdouble                   scale_y,gdouble                   angle,gdouble                   dest_x,gdouble                   dest_y
</FUNCTION>
<STRUCT>
<NAME>GimpPlugInInfo</NAME>
</STRUCT>
<STRUCT>
<NAME>GimpTile</NAME>
</STRUCT>
<STRUCT>
<NAME>GimpDrawable</NAME>
</STRUCT>
<STRUCT>
<NAME>GimpPixelRgn</NAME>
</STRUCT>
<STRUCT>
<NAME>GimpParamDef</NAME>
</STRUCT>
<STRUCT>
<NAME>GimpParamColor</NAME>
</STRUCT>
<STRUCT>
<NAME>GimpParamRegion</NAME>
</STRUCT>
<STRUCT>
<NAME>GimpParam</NAME>
</STRUCT>
<FUNCTION>
<NAME>gimp_ui_init</NAME>
<RETURNS>void  </RETURNS>
const gchar *prog_name,gboolean     preview
</FUNCTION>
<FUNCTION>
<NAME>gimp_undo_push_group_start</NAME>
<RETURNS>gboolean  </RETURNS>
gint32 image_ID
</FUNCTION>
<FUNCTION>
<NAME>gimp_undo_push_group_end</NAME>
<RETURNS>gboolean  </RETURNS>
gint32 image_ID
</FUNCTION>
