00001
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef __EXIF_MEM_H__
00026 #define __EXIF_MEM_H__
00027
00028 #include <libexif/exif-utils.h>
00029
00030 #ifdef __cplusplus
00031 extern "C" {
00032 #endif
00033
00038 typedef void * (* ExifMemAllocFunc) (ExifLong s);
00039
00045 typedef void * (* ExifMemReallocFunc) (void *p, ExifLong s);
00050 typedef void (* ExifMemFreeFunc) (void *p);
00051
00053 typedef struct _ExifMem ExifMem;
00054
00060 ExifMem *exif_mem_new (ExifMemAllocFunc a, ExifMemReallocFunc r,
00061 ExifMemFreeFunc f);
00064 void exif_mem_ref (ExifMem *);
00068 void exif_mem_unref (ExifMem *);
00069
00070 void *exif_mem_alloc (ExifMem *m, ExifLong s);
00071 void *exif_mem_realloc (ExifMem *m, void *p, ExifLong s);
00072 void exif_mem_free (ExifMem *m, void *p);
00073
00077 ExifMem *exif_mem_new_default (void);
00078
00079 #ifdef __cplusplus
00080 }
00081 #endif
00082
00083 #endif