gimp/app/composite/gimp-composite-generic.h

47 lines
2.9 KiB
C
Raw Normal View History

#ifndef gimp_composite_generic_h
#define gimp_composite_generic_h
extern gboolean gimp_composite_generic_init (void);
composite/ modularisation of the automatic compositing function "wiring" * composite/ modularisation of the automatic compositing function "wiring" to construct the table of compositing functions at run-time instead of compile time. The environment variable GIMP_COMPOSITE is a hexadecimal number representing a bit-field used to set/reset options in the gimp-composite code. * gimp-composite-altivec.[ch]: added * gimp-composite-altivec-installer.[ch]: added * gimp-composite-vis.[ch]: added * gimp-composite-vis-installer.[ch]: added * gimp-composite-mmx-installer.[ch]: added * gimp-composite-sse-installer.[ch]: added * gimp-composite-altivec-test.[ch]: added * gimp-composite-vis-test.[ch]: added * gimp-composite-mmx-test.[ch]: added * gimp-composite-sse-test.[ch]: added * make-installer.py: Added meta programme for generating code to 1) construct a table of compositing functions indexed by operation, and the pixel formats of the sources and destination, and 2) generating code for regression testing of these compositing functions against the same functions in gimp-composite-generic.c * gimp-composite-mmx.c (xxxgimp_composite_overlay_rgba8_rgba8_rgba8_mmx): removing from the current set of optimisations because it appears to be broken. * Makefile.am: modified regression testing targets to now build gimp-composite-*-test where * is any of generic, mmx, sse, altivec, and vis. * gimp-composite.c: moved in initialisation code gimp_composite_init() from gimp-composite-dispatch.c * gimp-composite.c: removed gimp_composite_unsupported(). * gimp-composite.c: use cpu_accel() to determine at run-time which set of optimisations are to be used. * gimp-composite.c: conditionally compile code for ARCH_X86. * make-gimp-composite-dispatch.c: retired. See make-installer.py * gimp-composite-mmx.c (op_overlay): namespace cleanup, op_overlay() and all of the constant values are now static * gimp-composite-mmx.c, gimp-composite-sse.c: fixed bug with the alpha mask being the address of the alpha mask, not the mask itself. * app/paint-funcs/paint-funcs.c: Check gimp_composite_options.use to see if we should use the new code or the old code.
2003-08-14 15:43:34 +08:00
/*
* The function gimp_composite_*_install() is defined in the code
* generated by make-install.py I hate to create a .h file just for
* that declaration, so I do it here (for now).
composite/ modularisation of the automatic compositing function "wiring" * composite/ modularisation of the automatic compositing function "wiring" to construct the table of compositing functions at run-time instead of compile time. The environment variable GIMP_COMPOSITE is a hexadecimal number representing a bit-field used to set/reset options in the gimp-composite code. * gimp-composite-altivec.[ch]: added * gimp-composite-altivec-installer.[ch]: added * gimp-composite-vis.[ch]: added * gimp-composite-vis-installer.[ch]: added * gimp-composite-mmx-installer.[ch]: added * gimp-composite-sse-installer.[ch]: added * gimp-composite-altivec-test.[ch]: added * gimp-composite-vis-test.[ch]: added * gimp-composite-mmx-test.[ch]: added * gimp-composite-sse-test.[ch]: added * make-installer.py: Added meta programme for generating code to 1) construct a table of compositing functions indexed by operation, and the pixel formats of the sources and destination, and 2) generating code for regression testing of these compositing functions against the same functions in gimp-composite-generic.c * gimp-composite-mmx.c (xxxgimp_composite_overlay_rgba8_rgba8_rgba8_mmx): removing from the current set of optimisations because it appears to be broken. * Makefile.am: modified regression testing targets to now build gimp-composite-*-test where * is any of generic, mmx, sse, altivec, and vis. * gimp-composite.c: moved in initialisation code gimp_composite_init() from gimp-composite-dispatch.c * gimp-composite.c: removed gimp_composite_unsupported(). * gimp-composite.c: use cpu_accel() to determine at run-time which set of optimisations are to be used. * gimp-composite.c: conditionally compile code for ARCH_X86. * make-gimp-composite-dispatch.c: retired. See make-installer.py * gimp-composite-mmx.c (op_overlay): namespace cleanup, op_overlay() and all of the constant values are now static * gimp-composite-mmx.c, gimp-composite-sse.c: fixed bug with the alpha mask being the address of the alpha mask, not the mask itself. * app/paint-funcs/paint-funcs.c: Check gimp_composite_options.use to see if we should use the new code or the old code.
2003-08-14 15:43:34 +08:00
*/
extern gboolean gimp_composite_generic_install (void);
void gimp_composite_addition_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_anti_erase_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_blend_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_burn_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_color_any_any_any_generic (guchar *dest,
const guchar *color,
guint w,
guint bytes);
void gimp_composite_color_erase_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_color_only_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_convert_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_darken_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_difference_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_dissolve_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_divide_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_dodge_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_erase_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_grain_extract_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_grain_merge_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_hardlight_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_hue_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_lighten_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_multiply_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_normal_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_overlay_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_replace_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_saturation_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_scale_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_screen_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_softlight_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_subtract_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_swap_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_value_any_any_any_generic (GimpCompositeContext *ctx);
void gimp_composite_behind_any_any_any_generic (GimpCompositeContext *ctx);
#endif