pa_allocation.c File Reference

Allocation Group implementation. More...

#include "pa_allocation.h"
#include "pa_util.h"

Data Structures

struct  PaUtilAllocationGroupLink

Defines

#define PA_INITIAL_LINK_COUNT_   16

Functions

PaUtilAllocationGroupPaUtil_CreateAllocationGroup (void)
void PaUtil_DestroyAllocationGroup (PaUtilAllocationGroup *group)
void * PaUtil_GroupAllocateMemory (PaUtilAllocationGroup *group, long size)
void PaUtil_GroupFreeMemory (PaUtilAllocationGroup *group, void *buffer)
void PaUtil_FreeAllAllocations (PaUtilAllocationGroup *group)

Detailed Description

Allocation Group implementation.


Define Documentation

#define PA_INITIAL_LINK_COUNT_   16

Function Documentation

PaUtilAllocationGroup* PaUtil_CreateAllocationGroup ( void   ) 
void PaUtil_DestroyAllocationGroup ( PaUtilAllocationGroup group  ) 
void PaUtil_FreeAllAllocations ( PaUtilAllocationGroup group  ) 
void* PaUtil_GroupAllocateMemory ( PaUtilAllocationGroup group,
long  size 
)
void PaUtil_GroupFreeMemory ( PaUtilAllocationGroup group,
void *  buffer 
)

Free a block of memory that was previously allocated though an allocation group. Calling this function is a relatively time consuming operation. Under normal circumstances clients should call PaUtil_FreeAllAllocations to free all allocated blocks simultaneously.

See also:
PaUtil_FreeAllAllocations

References PaUtilAllocationGroup::allocations, PaUtilAllocationGroupLink::buffer, PaUtilAllocationGroupLink::next, PaUtil_FreeMemory(), and PaUtilAllocationGroup::spareLinks.


Generated for PortAudio by  doxygen1.6.1