ImageMagick - MagickCore, C API: Monitor the Progress of an Image Operation
Author: ImageMagick Studio LLC
Description: Use ImageMagick® to create, edit, compose, and convert bitmap images. Resize an image, crop it, change its shades and colors, add captions, and more.
Keywords: magickcore, c, api:, monitor, the, progress, of, an, image, operation, ImageMagick, PerlMagick, image processing, image, photo, software, Magick++, OpenMP, convert

SetImageProgress • SetImageProgressMonitor • SetImageInfoProgressMonitor

## SetImageProgress

SetImageProgress() returns the progress of an image processing operation.

The format of the SetImageProgress method is:

        MagickBooleanType SetImageProgress(const char *text,
    const MagickOffsetType offset,const MagickSizeType extent)

A description of each parameter follows:

image
  the image.
text
  description of the image processing operation.
offset
  the offset relative to the extent parameter.
extent
  the extent of the progress.

## SetImageProgressMonitor

SetImageProgressMonitor() sets the image progress monitor to the specified method and returns the previous progress monitor if any. The progress monitor method looks like this:

        MagickBooleanType MagickProgressMonitor(const char *text,
    const MagickOffsetType offset,const MagickSizeType extent,
    void *client_data)

If the progress monitor returns MagickFalse, the current operation is interrupted.

The format of the SetImageProgressMonitor method is:

    MagickProgressMonitor SetImageProgressMonitor(Image *image,
      const MagickProgressMonitor progress_monitor,void *client_data)

A description of each parameter follows:

image
  the image.
progress_monitor
  Specifies a pointer to a method to monitor progress of an image operation.
client_data
  Specifies a pointer to any client data.

## SetImageInfoProgressMonitor

SetImageInfoProgressMonitor() sets the image_info progress monitor to the specified method and returns the previous progress monitor if any. The progress monitor method looks like this:

        MagickBooleanType MagickProgressMonitor(const char *text,
    const MagickOffsetType offset,const MagickSizeType extent,
    void *client_data)

If the progress monitor returns MagickFalse, the current operation is interrupted.

The format of the SetImageInfoProgressMonitor method is:

    MagickProgressMonitor SetImageInfoProgressMonitor(ImageInfo *image_info,
      const MagickProgressMonitor progress_monitor,void *client_data)

A description of each parameter follows:

image_info
  the image info.
progress_monitor
  Specifies a pointer to a method to monitor progress of an image operation.
client_data
  Specifies a pointer to any client data.