18 #ifndef MAGICKCORE_HASHMAP_H 19 #define MAGICKCORE_HASHMAP_H 21 #if defined(__cplusplus) || defined(c_plusplus) 25 #define SmallHashmapSize 17 26 #define MediumHashmapSize 509 27 #define LargeHashmapSize 8191 28 #define HugeHashmapSize 131071 38 *NewHashmap(
const size_t,
size_t (*)(
const void *),MagickBooleanType (*)
39 (
const void *,
const void *),
void *(*)(
void *),
void *(*)(
void *));
43 *NewLinkedList(
const size_t);
45 extern MagickExport MagickBooleanType
47 CompareHashmapString(
const void *,
const void *),
48 CompareHashmapStringInfo(
const void *,
const void *),
49 InsertValueInLinkedList(
LinkedListInfo *,
const size_t,
const void *),
51 int (*)(
const void *,
const void *),
void **,
const void *),
55 PutEntryInHashmap(
HashmapInfo *,
const void *,
const void *);
57 extern MagickExport
size_t 60 HashPointerType(
const void *),
61 HashStringType(
const void *),
62 HashStringInfoType(
const void *);
64 extern MagickExport
void 72 *RemoveElementByValueFromLinkedList(
LinkedListInfo *,
const void *),
74 *RemoveEntryFromHashmap(
HashmapInfo *,
const void *),
79 #if defined(__cplusplus) || defined(c_plusplus)