# ImageMagick – MagickCore, C API: The Image Registry
ImageMagick is a powerful, open-source software suite for creating, editing, converting, and manipulating images in over 200 formats. Ideal for web developers, graphic designers, and researchers, it offers versatile tools for image processing, including batch processing, format conversion, and complex image transformations.
Author: ImageMagick Studio LLC
Keywords: MagickCore, C API: The Image Registry, Image Processing, Digital Image Editing, Image Conversion, Open-Source Software, Image Manipulation, Command-Line Image Tools

# Registry

## DefineImageRegistry

DefineImageRegistry() associates a key/value pair with the image registry.

The format of the DefineImageRegistry method is:

    MagickBooleanType DefineImageRegistry(const RegistryType type,
      const char *option,ExceptionInfo *exception)

A description of each parameter follows:

type
  the type.
option
  the option.
exception
  the exception.

## DeleteImageRegistry

DeleteImageRegistry() deletes a key from the image registry.

The format of the DeleteImageRegistry method is:

    MagickBooleanType DeleteImageRegistry(const char *key)

A description of each parameter follows:

key
  the registry.

## GetImageRegistry

GetImageRegistry() returns a value associated with an image registry key.

The format of the GetImageRegistry method is:

    void *GetImageRegistry(const RegistryType type,const char *key,
      ExceptionInfo *exception)

A description of each parameter follows:

type
  the type.
key
  the key.
exception
  the exception.

## GetNextImageRegistry

GetNextImageRegistry() gets the next image registry value.

The format of the GetNextImageRegistry method is:

    char *GetNextImageRegistry(void)

## RegistryComponentTerminus

RegistryComponentTerminus() destroys the registry component.

The format of the DestroyDefines method is:

    void RegistryComponentTerminus(void)

## RemoveImageRegistry

RemoveImageRegistry() removes a key from the image registry and returns its value.

The format of the RemoveImageRegistry method is:

    void *RemoveImageRegistry(const char *key)

A description of each parameter follows:

key
  the registry.

## ResetImageRegistryIterator

ResetImageRegistryIterator() resets the registry iterator. Use it in conjunction with GetNextImageRegistry() to iterate over all the values in the image registry.

The format of the ResetImageRegistryIterator method is:

    ResetImageRegistryIterator(void)

## SetImageRegistry

SetImageRegistry() associates a value with an image registry key.

The format of the SetImageRegistry method is:

    MagickBooleanType SetImageRegistry(const RegistryType type,
      const char *key,const void *value,ExceptionInfo *exception)

A description of each parameter follows:

type
  the type.
key
  the key.
value
  the value.
exception
  the exception.