00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef __EXIF_MEM_H__
00022 #define __EXIF_MEM_H__
00023
00024 #include <libexif/exif-utils.h>
00025
00026 #ifdef __cplusplus
00027 extern "C" {
00028 #endif
00029
00030
00031 typedef void * (* ExifMemAllocFunc) (ExifLong);
00032
00033 typedef void * (* ExifMemReallocFunc) (void *, ExifLong);
00034 typedef void (* ExifMemFreeFunc) (void *);
00035
00036 typedef struct _ExifMem ExifMem;
00037
00038 ExifMem *exif_mem_new (ExifMemAllocFunc, ExifMemReallocFunc,
00039 ExifMemFreeFunc);
00040 void exif_mem_ref (ExifMem *);
00041 void exif_mem_unref (ExifMem *);
00042
00043 void *exif_mem_alloc (ExifMem *, ExifLong);
00044 void *exif_mem_realloc (ExifMem *, void *, ExifLong);
00045 void exif_mem_free (ExifMem *, void *);
00046
00047
00048 ExifMem *exif_mem_new_default (void);
00049
00050 #ifdef __cplusplus
00051 }
00052 #endif
00053
00054 #endif