(struct i_fill_tag *fill, int x, int y, int width, int channels,
i_fcolor *data);
typedef void (*i_fill_destroy_f)(struct i_fill_tag *fill);
+
+/* combine functions modify their target and are permitted to modify
+ the source to prevent having to perform extra copying/memory
+ allocations, etc
+ The out array has I<channels> channels.
+
+ The in array has I<channels> channels + an alpha channel if one
+ isn't included in I<channels>.
+*/
+
typedef void (*i_fill_combine_f)(i_color *out, i_color *in, int channels,
int count);
typedef void (*i_fill_combinef_f)(i_fcolor *out, i_fcolor *in, int channels,
{
/* called for 8-bit/sample image (and maybe lower) */
/* this may be NULL, if so call fill_with_fcolor */
- i_fill_with_color_f fill_with_color;
+ i_fill_with_color_f f_fill_with_color;
/* called for other sample sizes */
/* this must be non-NULL */
- i_fill_with_fcolor_f fill_with_fcolor;
+ i_fill_with_fcolor_f f_fill_with_fcolor;
/* called if non-NULL to release any extra resources */
i_fill_destroy_f destroy;