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
00039 typedef void * (* ExifMemAllocFunc) (ExifLong s);
00040
00047 typedef void * (* ExifMemReallocFunc) (void *p, ExifLong s);
00048
00054 typedef void (* ExifMemFreeFunc) (void *p);
00055
00057 typedef struct _ExifMem ExifMem;
00058
00065 ExifMem *exif_mem_new (ExifMemAllocFunc a, ExifMemReallocFunc r,
00066 ExifMemFreeFunc f);
00069 void exif_mem_ref (ExifMem *);
00070
00074 void exif_mem_unref (ExifMem *);
00075
00076 void *exif_mem_alloc (ExifMem *m, ExifLong s);
00077 void *exif_mem_realloc (ExifMem *m, void *p, ExifLong s);
00078 void exif_mem_free (ExifMem *m, void *p);
00079
00084 ExifMem *exif_mem_new_default (void);
00085
00086 #ifdef __cplusplus
00087 }
00088 #endif
00089
00090 #endif