# ImageMagick: MagickCore, C API for ImageMagick: Monitor or Limit Resource Consumption
ImageMagick® is a software suite to create, edit, and compose bitmap images. It can read, convert and write images in a variety of formats (about 100) including GIF, JPEG, JPEG-2000, PNG, PDF, PhotoCD, TIFF, and DPX. Use ImageMagick to translate, flip, mirror, rotate, scale, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bézier curves. ImageMagick is free software delivered as a ready-to-run binary distribution or as source code that you can freely use, copy, modify, and distribute. Its license is compatible with the [cut: 1167 characters, first 599 kept]
Author: ImageMagick Studio LLC
Keywords: magickcore, c, api, for, imagemagick:, monitor, or, limit, resource, consumption, ImageMagick, ImageMagic, MagickCore, MagickWand, PerlMagick, Magick++, RMagick, PythonMagick, JMagick, TclMagick, Image, Magick, Magic, Wand

## AcquireMagickResource

AcquireMagickResource() acquires resources of the specified type. MagickFalse is returned if the specified resource is exhausted otherwise MagickTrue.

The format of the AcquireMagickResource() method is:

      MagickBooleanType AcquireMagickResource(const ResourceType type,
        const MagickSizeType size)

A description of each parameter follows:

##### type

The type of resource.

##### size

The number of bytes needed from for this resource.

## AcquireUniqueFileResource

AcquireUniqueFileResource() returns a unique file name, and returns a file descriptor for the file open for reading and writing.

The format of the AcquireUniqueFileResource() method is:

      int AcquireUniqueFileResource(char *path)

A description of each parameter follows:

##### path

Specifies a pointer to an array of characters. The unique path name is returned in this array.

## GetMagickResource

GetMagickResource() returns the the specified resource in megabytes.

The format of the GetMagickResource() method is:

      unsigned long GetMagickResource(const ResourceType type)

A description of each parameter follows:

##### type

The type of resource.

## GetMagickResource

GetMagickResource() returns the the specified resource limit in megabytes.

The format of the GetMagickResourceLimit() method is:

      unsigned long GetMagickResourceLimit(const ResourceType type)

A description of each parameter follows:

##### type

The type of resource.

## ListMagickResourceInfo

ListMagickResourceInfo() lists the resource info to a file.

The format of the ListMagickResourceInfo method is:

      MagickBooleanType ListMagickResourceInfo(FILE *file,
        ExceptionInfo *exception)

A description of each parameter follows.

##### file

An pointer to a FILE.

##### exception

Return any errors or warnings in this structure.

## RelinquishMagickResource

RelinquishMagickResource() relinquishes resources of the specified type.

The format of the RelinquishMagickResource() method is:

      void RelinquishMagickResource(const ResourceType type,
        const MagickSizeType size)

A description of each parameter follows:

##### type

The type of resource.

##### size

The size of the resource.

## RelinquishUniqueFileResource

RelinquishUniqueFileResource() relinquishes a unique file resource.

The format of the RelinquishUniqueFileResource() method is:

      MagickBooleanType RelinquishUniqueFileResource(const char *path)

A description of each parameter follows:

##### name

the name of the temporary resource.

## SetMagickResourceLimit

SetMagickResourceLimit() sets the limit for a particular resource in megabytes.

The format of the SetMagickResourceLimit() method is:

      MagickBooleanType SetMagickResourceLimit(const ResourceType type,
        const unsigned long limit)

A description of each parameter follows:

##### type

The type of resource.

##### limit

The maximum limit for the resource.

Discourse Server • Mailing Lists • ImageMagick Studio