EXIF library (libexif) API 0.6.24
exif-mem.h File Reference

Define the ExifMem data type and the associated functions. More...

Go to the source code of this file.

Typedefs

typedef void *(* ExifMemAllocFunc) (ExifLong s)
 Should work like calloc()
 
typedef void *(* ExifMemReallocFunc) (void *p, ExifLong s)
 Should work like realloc()
 
typedef void(* ExifMemFreeFunc) (void *p)
 Free method for ExifMem.
 
typedef struct _ExifMem ExifMem
 ExifMem define a memory allocator.
 

Functions

ExifMemexif_mem_new (ExifMemAllocFunc a, ExifMemReallocFunc r, ExifMemFreeFunc f)
 Create a new ExifMem.
 
void exif_mem_ref (ExifMem *)
 Refcount an ExifMem.
 
void exif_mem_unref (ExifMem *)
 Unrefcount an ExifMem.
 
void * exif_mem_alloc (ExifMem *m, ExifLong s)
 
void * exif_mem_realloc (ExifMem *m, void *p, ExifLong s)
 
void exif_mem_free (ExifMem *m, void *p)
 
ExifMemexif_mem_new_default (void)
 Create a new ExifMem with default values for your convenience.
 

Detailed Description

Define the ExifMem data type and the associated functions.

ExifMem defines the memory management functions used within libexif.

Typedef Documentation

◆ ExifMemAllocFunc

typedef void *(* ExifMemAllocFunc) (ExifLong s)

Should work like calloc()

Parameters
[in]sthe size of the block to allocate.
Returns
the allocated memory and initialized.

◆ ExifMemFreeFunc

typedef void(* ExifMemFreeFunc) (void *p)

Free method for ExifMem.

Parameters
[in]pthe pointer to free
Returns
the freed pointer

◆ ExifMemReallocFunc

typedef void *(* ExifMemReallocFunc) (void *p, ExifLong s)

Should work like realloc()

Parameters
[in]pthe pointer to reallocate
[in]sthe size of the reallocated block
Returns
allocated memory

Function Documentation

◆ exif_mem_new()

ExifMem * exif_mem_new ( ExifMemAllocFunc  a,
ExifMemReallocFunc  r,
ExifMemFreeFunc  f 
)

Create a new ExifMem.

Parameters
[in]athe allocator function
[in]rthe reallocator function
[in]fthe free function
Returns
allocated ExifMem, or NULL on error

◆ exif_mem_new_default()

ExifMem * exif_mem_new_default ( void  )

Create a new ExifMem with default values for your convenience.

Returns
return a new default ExifMem

◆ exif_mem_unref()

void exif_mem_unref ( ExifMem mem)

Unrefcount an ExifMem.

If the refcount reaches 0, the ExifMem is freed