#include "MagickCore/studio.h"
#include "MagickCore/blob.h"
#include "MagickCore/client.h"
#include "MagickCore/configure.h"
#include "MagickCore/configure-private.h"
#include "MagickCore/exception.h"
#include "MagickCore/exception-private.h"
#include "MagickCore/linked-list.h"
#include "MagickCore/magic.h"
#include "MagickCore/magic-private.h"
#include "MagickCore/memory_.h"
#include "MagickCore/memory-private.h"
#include "MagickCore/semaphore.h"
#include "MagickCore/string_.h"
#include "MagickCore/string-private.h"
#include "MagickCore/token.h"
#include "MagickCore/utility.h"
#include "MagickCore/utility-private.h"
#include "coders/coders.h"
#include "coders/coders-list.h"
Data Structures | |
struct | _MagicMapInfo |
struct | _MagicInfo |
Defines | |
#define | AddMagickCoder(coder) Magick ## coder ## Headers |
Typedefs | |
typedef struct _MagicMapInfo | MagicMapInfo |
Functions | |
static MagickBooleanType | IsMagicListInstantiated (ExceptionInfo *) |
static int | CompareMagickInfoSize (const void *a, const void *b) |
static LinkedListInfo * | AcquireMagicList (ExceptionInfo *exception) |
static MagickBooleanType | IsMagicCacheInstantiated () |
MagickExport const MagicInfo * | GetMagicInfo (const unsigned char *magic, const size_t length, ExceptionInfo *exception) |
MagickExport size_t | GetMagicPatternExtent (ExceptionInfo *exception) |
static int | MagicInfoCompare (const void *x, const void *y) |
MagickExport const MagicInfo ** | GetMagicInfoList (const char *pattern, size_t *number_aliases, ExceptionInfo *exception) |
static int | MagicCompare (const void *x, const void *y) |
MagickExport char ** | GetMagicList (const char *pattern, size_t *number_aliases, ExceptionInfo *exception) |
MagickExport const char * | GetMagicName (const MagicInfo *magic_info) |
MagickExport MagickBooleanType | ListMagicInfo (FILE *file, ExceptionInfo *exception) |
MagickPrivate MagickBooleanType | MagicComponentGenesis (void) |
static void * | DestroyMagicElement (void *magic_info) |
MagickPrivate void | MagicComponentTerminus (void) |
Variables | |
static const MagicMapInfo | MagicMap [] |
static LinkedListInfo * | magic_cache = (LinkedListInfo *) NULL |
static LinkedListInfo * | magic_list = (LinkedListInfo *) NULL |
static SemaphoreInfo * | magic_cache_semaphore = (SemaphoreInfo *) NULL |
static SemaphoreInfo * | magic_list_semaphore = (SemaphoreInfo *) NULL |
#define AddMagickCoder | ( | coder | ) | Magick ## coder ## Headers |
typedef struct _MagicMapInfo MagicMapInfo |
static LinkedListInfo* AcquireMagicList | ( | ExceptionInfo * | exception | ) | [static] |
References AcquireMagickMemory(), CompareMagickInfoSize(), _MagicInfo::exempt, GetMagickModule, InsertValueInSortedLinkedList(), _MagicMapInfo::length, _MagicInfo::length, _MagicInfo::magic, _MagicMapInfo::magic, MagickCoreSignature, MagickFalse, MagickTrue, MagicMap, _MagicInfo::name, _MagicMapInfo::name, NewLinkedList(), _MagicMapInfo::offset, _MagicInfo::offset, _MagicInfo::path, ResourceLimitError, _MagicInfo::signature, _MagicInfo::target, and ThrowMagickException().
Referenced by IsMagicListInstantiated().
static int CompareMagickInfoSize | ( | const void * | a, | |
const void * | b | |||
) | [static] |
References _MagicInfo::length, and _MagicInfo::offset.
Referenced by AcquireMagicList(), and GetMagicInfo().
static void* DestroyMagicElement | ( | void * | magic_info | ) | [static] |
References DestroyString(), _MagicInfo::exempt, _MagicInfo::magic, MagickFalse, _MagicInfo::name, _MagicInfo::path, RelinquishMagickMemory(), and _MagicInfo::target.
Referenced by MagicComponentTerminus().
MagickExport const MagicInfo* GetMagicInfo | ( | const unsigned char * | magic, | |
const size_t | length, | |||
ExceptionInfo * | exception | |||
) |
References CompareMagickInfoSize(), GetNextValueInLinkedList(), InsertValueInSortedLinkedList(), IsMagicCacheInstantiated(), IsMagicListInstantiated(), _MagicInfo::length, LockSemaphoreInfo(), _MagicInfo::magic, magic_cache, magic_cache_semaphore, magic_list, magic_list_semaphore, MagickFalse, _MagicInfo::offset, ResetLinkedListIterator(), and UnlockSemaphoreInfo().
Referenced by GetMagicInfoList(), GetMagicList(), and SetImageInfo().
MagickExport const MagicInfo** GetMagicInfoList | ( | const char * | pattern, | |
size_t * | number_aliases, | |||
ExceptionInfo * | exception | |||
) |
References AcquireQuantumMemory(), GetMagicInfo(), GetMagickModule, GetNextValueInLinkedList(), GetNumberOfElementsInLinkedList(), GlobExpression(), LockSemaphoreInfo(), LogMagickEvent(), magic_list, magic_list_semaphore, MagicInfoCompare(), MagickFalse, _MagicInfo::name, ResetLinkedListIterator(), _MagicInfo::stealth, TraceEvent, and UnlockSemaphoreInfo().
Referenced by ListMagicInfo().
MagickExport char** GetMagicList | ( | const char * | pattern, | |
size_t * | number_aliases, | |||
ExceptionInfo * | exception | |||
) |
References AcquireQuantumMemory(), ConstantString(), GetMagicInfo(), GetMagickModule, GetNextValueInLinkedList(), GetNumberOfElementsInLinkedList(), GlobExpression(), LockSemaphoreInfo(), LogMagickEvent(), magic_list, magic_list_semaphore, MagicCompare(), MagickFalse, _MagicInfo::name, ResetLinkedListIterator(), _MagicInfo::stealth, TraceEvent, and UnlockSemaphoreInfo().
MagickExport const char* GetMagicName | ( | const MagicInfo * | magic_info | ) |
References GetMagickModule, LogMagickEvent(), MagickCoreSignature, _MagicInfo::name, _MagicInfo::signature, and TraceEvent.
Referenced by SetImageInfo().
MagickExport size_t GetMagicPatternExtent | ( | ExceptionInfo * | exception | ) |
static MagickBooleanType IsMagicCacheInstantiated | ( | ) | [static] |
References ActivateSemaphoreInfo(), LockSemaphoreInfo(), magic_cache, magic_cache_semaphore, MagickFalse, MagickTrue, NewLinkedList(), and UnlockSemaphoreInfo().
Referenced by GetMagicInfo().
static MagickBooleanType IsMagicListInstantiated | ( | ExceptionInfo * | exception | ) | [static] |
References AcquireMagicList(), ActivateSemaphoreInfo(), LockSemaphoreInfo(), magic_list, magic_list_semaphore, MagickFalse, MagickTrue, and UnlockSemaphoreInfo().
Referenced by GetMagicInfo(), and GetMagicPatternExtent().
MagickExport MagickBooleanType ListMagicInfo | ( | FILE * | file, | |
ExceptionInfo * | exception | |||
) |
static int MagicCompare | ( | const void * | x, | |
const void * | y | |||
) | [static] |
References LocaleCompare().
Referenced by GetMagicList().
MagickPrivate MagickBooleanType MagicComponentGenesis | ( | void | ) |
References AcquireSemaphoreInfo(), magic_list_semaphore, and MagickTrue.
Referenced by MagickCoreGenesis().
MagickPrivate void MagicComponentTerminus | ( | void | ) |
static int MagicInfoCompare | ( | const void * | x, | |
const void * | y | |||
) | [static] |
References LocaleCompare().
Referenced by GetMagicInfoList().
LinkedListInfo* magic_cache = (LinkedListInfo *) NULL [static] |
Referenced by GetMagicInfo(), IsMagicCacheInstantiated(), and MagicComponentTerminus().
SemaphoreInfo* magic_cache_semaphore = (SemaphoreInfo *) NULL [static] |
Referenced by GetMagicInfo(), IsMagicCacheInstantiated(), and MagicComponentTerminus().
LinkedListInfo * magic_list = (LinkedListInfo *) NULL [static] |
SemaphoreInfo * magic_list_semaphore = (SemaphoreInfo *) NULL [static] |
const MagicMapInfo MagicMap[] [static] |
{ MagickCoderHeader("CGM", 0, "BEGMF") MagickCoderHeader("FIG", 0, "#FIG") MagickCoderHeader("HPGL", 0, "IN;") MagickCoderHeader("ILBM", 8, "ILBM") }
Referenced by AcquireMagicList().