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