pixel_row_iterator - Pixel row iterator pattern support functions
MagickPassFail PixelRowIterateDualModify( PixelRowIteratorDualModifyCallback call_back, const char *description, void *user_data, const unsigned long columns, const unsigned long rows, const Image *source_image, const long source_x, const long source_y, Image *update_image, const long update_x, const long update_y, ExceptionInfo *exception );
MagickPassFail PixelRowIterateDualRead( PixelRowIteratorDualReadCallback call_back, const char *description, void *user_data, const unsigned long columns, const unsigned long rows, const Image *first_image, const long first_x, const long first_y, const Image *second_image, const long second_x, const long second_y, ExceptionInfo *exception );;
MagickPassFail PixelRowIterateMonoModify( PixelRowIteratorMonoModifyCallback call_back, const char *description, void *user_data, const long x, const long y, const unsigned long columns, const unsigned long rows, Image *image, ExceptionInfo *exception );
MagickPassFail PixelRowIterateMonoRead( PixelRowIteratorMonoReadCallback call_back, const char *description, void *user_data, const long x, const long y, const unsigned long columns, const unsigned long rows, const Image *image, ExceptionInfo *exception );
PixelRowIterateMonoRead() iterates through a region of an image and invokes a user-provided callback function ( of type PxelRowIteratorMonoReadCallback ) for a row of pixels. This is useful to support simple operations such as statistics computation.
The format of the PixelRowIterateMonoRead method is:
MagickPassFail PixelRowIterateMonoRead ( PixelRowIteratorMonoReadCallback call_back, const char *description, void *user_data, const long x, const long y, const unsigned long columns, const unsigned long rows, const Image *image, ExceptionInfo *exception );
A description of each parameter follows:
A user-provided C callback function which is passed the address of a pixel from each image.
textual description of operation being performed.
User-provided context data.
The horizontal ordinate of the top left corner of the region.
The vertical ordinate of the top left corner of the region.
Width of pixel region
Height of pixel region
The address of the Image.
If an error is reported, this argument is updated with the reason.
PixelRowIterateMonoModify() iterates through a region of an image and invokes a user-provided callback function ( of type PixelRowIteratorMonoReadCallback ) for each row of pixels. This is useful to support simple operations such as level shifting, colorspace translation, or thresholding.
The format of the PixelRowIterateMonoModify method is:
MagickPassFail PixelRowIterateMonoModify ( PixelRowIteratorMonoModifyCallback call_back, const char *description, void *user_data, const long x, const long y, const unsigned long columns, const unsigned long rows, Image *image, ExceptionInfo *exception );
A description of each parameter follows:
A user-provided C callback function which is passed the address of a row of pixels from each image.
textual description of operation being performed.
User-provided context data.
The horizontal ordinate of the top left corner of the region.
The vertical ordinate of the top left corner of the region.
Width of pixel region
Height of pixel region
The address of the Image.
If an error is reported, this argument is updated with the reason.
PixelRowIterateDualRead() iterates through pixel regions of two images and invokes a user-provided callback function ( of type PixelRowIteratorDualReadCallback ) for each row of pixels. This is useful to support operations such as image comparison.
The format of the PixelRowIterateDualModify method is:
MagickPassFail PixelRowIterateDualRead ( PixelRowIteratorDualReadCallback call_back, const char *description, void *user_data, const unsigned long columns, const unsigned long rows, const Image *first_image, const long first_x, const long first_y, const Image *second_image, const long second_x, const long second_y, ExceptionInfo *exception );;
A description of each parameter follows:
A user-provided C callback function which is passed the address of a row of pixels from each image.
textual description of operation being performed.
User-provided context data.
Width of pixel region
Height of pixel region
The address of the first Image.
The horizontal ordinate of the top left corner of the first region.
The vertical ordinate of the top left corner of the first region.
The address of the second Image.
The horizontal ordinate of the top left corner of the second region.
The vertical ordinate of the top left corner of the second region.
If an error is reported, this argument is updated with the reason.
PixelRowIterateDualModify() iterates through pixel regions of two images and invokes a user-provided callback function ( of type PixelRowIteratorDualModifyCallback ) for each row of pixels. This is useful to support operations such as composition.
The format of the PixelRowIterateDualModify method is:
MagickPassFail PixelRowIterateDualModify ( PixelRowIteratorDualModifyCallback call_back, const char *description, void *user_data, const unsigned long columns, const unsigned long rows, const Image *source_image, const long source_x, const long source_y, Image *update_image, const long update_x, const long update_y, ExceptionInfo *exception );
A description of each parameter follows:
A user-provided C callback function which reads from a row of source pixels and updates a row of destination pixels.
textual description of operation being performed.
User-provided context data.
Width of pixel region
Height of pixel region
The address of the constant source Image.
The horizontal ordinate of the top left corner of the source region.
The vertical ordinate of the top left corner of the source region.
The address of the update Image.
The horizontal ordinate of the top left corner of the update region.
The vertical ordinate of the top left corner of the update region.
If an error is reported, this argument is updated with the reason.