=cut
*/
-#include "image.h"
-#include "imagei.h"
+#include "imager.h"
+#include "imageri.h"
#include <stdio.h>
/*
#define MASKEXT(im) ((i_img_mask_ext *)((im)->ext_data))
static void i_destroy_masked(i_img *im);
-static int i_ppix_masked(i_img *im, int x, int y, i_color *pix);
-static int i_ppixf_masked(i_img *im, int x, int y, i_fcolor *pix);
-static int i_plin_masked(i_img *im, int l, int r, int y, i_color *vals);
-static int i_plinf_masked(i_img *im, int l, int r, int y, i_fcolor *vals);
+static int i_ppix_masked(i_img *im, int x, int y, const i_color *pix);
+static int i_ppixf_masked(i_img *im, int x, int y, const i_fcolor *pix);
+static int i_plin_masked(i_img *im, int l, int r, int y, const i_color *vals);
+static int i_plinf_masked(i_img *im, int l, int r, int y, const i_fcolor *vals);
static int i_gpix_masked(i_img *im, int x, int y, i_color *pix);
static int i_gpixf_masked(i_img *im, int x, int y, i_fcolor *pix);
static int i_glin_masked(i_img *im, int l, int r, int y, i_color *vals);
static int i_glinf_masked(i_img *im, int l, int r, int y, i_fcolor *vals);
static int i_gsamp_masked(i_img *im, int l, int r, int y, i_sample_t *samp,
- int *chans, int chan_count);
+ int const *chans, int chan_count);
static int i_gsampf_masked(i_img *im, int l, int r, int y, i_fsample_t *samp,
- int *chans, int chan_count);
+ int const *chans, int chan_count);
static int i_gpal_masked(i_img *im, int l, int r, int y, i_palidx *vals);
-static int i_ppal_masked(i_img *im, int l, int r, int y, i_palidx *vals);
+static int i_ppal_masked(i_img *im, int l, int r, int y, const i_palidx *vals);
/*
=item IIM_base_masked
{
0, /* channels set */
0, 0, 0, /* xsize, ysize, bytes */
- ~0, /* ch_mask */
+ ~0U, /* ch_mask */
i_8_bits, /* bits */
i_palette_type, /* type */
1, /* virtual */
}
/*
-=item i_ppix_masked(i_img *im, int x, int y, i_color *pix)
+=item i_ppix_masked(i_img *im, int x, int y, const i_color *pix)
Write a pixel to a masked image.
=cut
*/
-static int i_ppix_masked(i_img *im, int x, int y, i_color *pix) {
+static int i_ppix_masked(i_img *im, int x, int y, const i_color *pix) {
i_img_mask_ext *ext = MASKEXT(im);
int result;
}
/*
-=item i_ppixf_masked(i_img *im, int x, int y, i_fcolor *pix)
+=item i_ppixf_masked(i_img *im, int x, int y, const i_fcolor *pix)
Write a pixel to a masked image.
=cut
*/
-static int i_ppixf_masked(i_img *im, int x, int y, i_fcolor *pix) {
+static int i_ppixf_masked(i_img *im, int x, int y, const i_fcolor *pix) {
i_img_mask_ext *ext = MASKEXT(im);
int result;
}
/*
-=item i_plin_masked(i_img *im, int l, int r, int y, i_color *vals)
+=item i_plin_masked(i_img *im, int l, int r, int y, const i_color *vals)
Write a row of data to a masked image.
=cut
*/
-static int i_plin_masked(i_img *im, int l, int r, int y, i_color *vals) {
+static int i_plin_masked(i_img *im, int l, int r, int y, const i_color *vals) {
i_img_mask_ext *ext = MASKEXT(im);
- int result;
if (y >= 0 && y < im->ysize && l < im->xsize && l >= 0) {
if (r > im->xsize)
i_gsamp(ext->mask, l, r, y, samps, NULL, 1);
if (w < 10)
- simple = 0;
+ simple = 1;
else {
/* the idea is to make a fast scan to see how often the state
changes */
}
/*
-=item i_plinf_masked(i_img *im, int l, int r, int y, i_fcolor *vals)
+=item i_plinf_masked(i_img *im, int l, int r, int y, const i_fcolor *vals)
Write a row of data to a masked image.
=cut
*/
-static int i_plinf_masked(i_img *im, int l, int r, int y, i_fcolor *vals) {
+static int i_plinf_masked(i_img *im, int l, int r, int y, const i_fcolor *vals) {
i_img_mask_ext *ext = MASKEXT(im);
if (y >= 0 && y < im->ysize && l < im->xsize && l >= 0) {
if (r > im->xsize)
i_gsamp(ext->mask, l, r, y, samps, NULL, 1);
if (w < 10)
- simple = 0;
+ simple = 1;
else {
/* the idea is to make a fast scan to see how often the state
changes */
}
static int i_gsamp_masked(i_img *im, int l, int r, int y, i_sample_t *samp,
- int *chans, int chan_count) {
+ int const *chans, int chan_count) {
i_img_mask_ext *ext = MASKEXT(im);
if (y >= 0 && y < im->ysize && l < im->xsize && l >= 0) {
if (r > im->xsize)
}
static int i_gsampf_masked(i_img *im, int l, int r, int y, i_fsample_t *samp,
- int *chans, int chan_count) {
+ int const *chans, int chan_count) {
i_img_mask_ext *ext = MASKEXT(im);
if (y >= 0 && y < im->ysize && l < im->xsize && l >= 0) {
if (r > im->xsize)
}
}
-static int i_ppal_masked(i_img *im, int l, int r, int y, i_palidx *vals) {
+static int i_ppal_masked(i_img *im, int l, int r, int y, const i_palidx *vals) {
i_img_mask_ext *ext = MASKEXT(im);
if (y >= 0 && y < im->ysize && l < im->xsize && l >= 0) {
if (r > im->xsize)
int w = r - l;
int start;
+ i_gsamp(ext->mask, l, r, y, samps, NULL, 1);
i = 0;
while (i < w) {
while (i < w && !samps[i])
}
}
+
+/*
+=back
+
+=head1 AUTHOR
+
+Tony Cook <tony@develop-help.com>
+
+=head1 SEE ALSO
+
+Imager(3)
+
+=cut
+*/