# mime.c File Reference

`#include "magick/studio.h"`
`#include "magick/blob.h"`
`#include "magick/client.h"`
`#include "magick/configure.h"`
`#include "magick/exception.h"`
`#include "magick/exception-private.h"`
`#include "magick/hashmap.h"`
`#include "magick/memory_.h"`
`#include "magick/mime.h"`
`#include "magick/mime-private.h"`
`#include "magick/option.h"`
`#include "magick/semaphore.h"`
`#include "magick/string_.h"`
`#include "magick/token.h"`
`#include "magick/utility.h"`
`#include "magick/xml-tree.h"`

## Data Structures

struct | _MimeInfo

## Defines

#define | MimeFilename "mime.xml"

## Functions

static MagickBooleanType | InitializeMimeList (ExceptionInfo *)
static void * | DestroyMimeElement (void *mime_info)
MagickExport void | DestroyMimeList (void)
MagickExport const MimeInfo * | GetMimeInfo (const char *filename, const unsigned char *magic, const size_t length, ExceptionInfo *exception)
static int | MimeInfoCompare (const void *x, const void *y)
MagickExport const MimeInfo ** | GetMimeInfoList (const char *pattern, unsigned long *number_aliases, ExceptionInfo *exception)
static int | MimeCompare (const void *x, const void *y)
MagickExport char ** | GetMimeList (const char *pattern, unsigned long *number_aliases, ExceptionInfo *exception)
MagickExport const char * | GetMimeDescription (const MimeInfo *mime_info)
MagickExport const char * | GetMimeType (const MimeInfo *mime_info)
MagickExport MagickBooleanType | ListMimeInfo (FILE *file, ExceptionInfo *exception)
static MagickBooleanType | LoadMimeList (const char *xml, const char *filename, const unsigned long depth, ExceptionInfo *exception)
MagickExport MagickBooleanType | LoadMimeLists (const char *filename, ExceptionInfo *exception)
MagickExport char * | MagickToMime (const char *magick)

## Variables

static const char * | MimeMap
static LinkedListInfo * | mime_list = (LinkedListInfo *) NULL
static SemaphoreInfo * | mime_semaphore = (SemaphoreInfo *) NULL
static volatile MagickBooleanType | instantiate_mime = MagickFalse

## Define Documentation

#define MimeFilename "mime.xml"

## Function Documentation

static void* DestroyMimeElement | ( | void * | mime_info | ) | `[static]`

MagickExport void DestroyMimeList | ( | void |  | ) |

MagickExport const char* GetMimeDescription | ( | const MimeInfo * | mime_info | ) |

MagickExport const MimeInfo* GetMimeInfo | ( | const char * | filename,
|  | const unsigned char * | magic,
|  | const size_t | length,
|  | ExceptionInfo * | exception |
| ) |  |  |

MagickExport const MimeInfo** GetMimeInfoList | ( | const char * | pattern,
|  | unsigned long * | number_aliases,
|  | ExceptionInfo * | exception |
| ) |  |  |

MagickExport char** GetMimeList | ( | const char * | pattern,
|  | unsigned long * | number_aliases,
|  | ExceptionInfo * | exception |
| ) |  |  |

MagickExport const char* GetMimeType | ( | const MimeInfo * | mime_info | ) |

static MagickBooleanType InitializeMimeList | ( | ExceptionInfo * | exception | ) | `[static]`

MagickExport MagickBooleanType ListMimeInfo | ( | FILE * | file,
|  | ExceptionInfo * | exception |
| ) |  |  |

static MagickBooleanType LoadMimeList | ( | const char * | xml,
|  | const char * | filename,
|  | const unsigned long | depth,
|  | ExceptionInfo * | exception |
| ) |  |  | `[static]`

MagickExport MagickBooleanType LoadMimeLists | ( | const char * | filename,
|  | ExceptionInfo * | exception |
| ) |  |  |

MagickExport char* MagickToMime | ( | const char * | magick | ) |

static int MimeCompare | ( | const void * | x,
|  | const void * | y |
| ) |  |  | `[static]`

static int MimeInfoCompare | ( | const void * | x,
|  | const void * | y |
| ) |  |  | `[static]`

## Variable Documentation

volatile MagickBooleanType instantiate_mime = MagickFalse`[static]`

LinkedListInfo* mime_list = (LinkedListInfo *) NULL`[static]`

SemaphoreInfo* mime_semaphore = (SemaphoreInfo *) NULL`[static]`

const char* MimeMap`[static]`

Initial value:

     (char *)
        "<?xml version=\"1.0\"?>"
        "<mimemap>"
        "</mimemap>"