xine-lib 1.2.11
Data Structures | Macros | Typedefs | Functions
pool.c File Reference
#include <xine/attributes.h>
#include <xine/pool.h>
#include <xine/xineutils.h>
#include <xine/array.h>

Data Structures

struct  xine_pool_chunk_s
 
struct  xine_pool_s
 

Macros

#define MIN_CHUNK_SIZE   32
 
#define MAX_CHUNK_SIZE   65536
 

Typedefs

typedef struct xine_pool_chunk_s xine_pool_chunk_t
 

Functions

static xine_pool_chunk_txine_pool_alloc_chunk (size_t object_size, size_t object_count)
 
static void xine_pool_delete_chunk (xine_pool_chunk_t *chunk)
 
xine_pool_txine_pool_new (size_t object_size, void(*create_object)(void *object), void(*prepare_object)(void *object), void(*return_object)(void *object), void(*delete_object)(void *object))
 
void xine_pool_delete (xine_pool_t *pool)
 
void * xine_pool_get (xine_pool_t *pool)
 
void xine_pool_put (xine_pool_t *pool, void *object)
 

Macro Definition Documentation

◆ MAX_CHUNK_SIZE

#define MAX_CHUNK_SIZE   65536

◆ MIN_CHUNK_SIZE

#define MIN_CHUNK_SIZE   32

Typedef Documentation

◆ xine_pool_chunk_t

Function Documentation

◆ xine_pool_alloc_chunk()

static xine_pool_chunk_t * xine_pool_alloc_chunk ( size_t  object_size,
size_t  object_count 
)
static

◆ xine_pool_delete()

void xine_pool_delete ( xine_pool_t pool)

◆ xine_pool_delete_chunk()

static void xine_pool_delete_chunk ( xine_pool_chunk_t chunk)
static

References _x_assert.

Referenced by xine_pool_delete().

◆ xine_pool_get()

void * xine_pool_get ( xine_pool_t pool)

◆ xine_pool_new()

xine_pool_t * xine_pool_new ( size_t  object_size,
void(*)(void *object)  create_object,
void(*)(void *object)  prepare_object,
void(*)(void *object)  return_object,
void(*)(void *object)  delete_object 
)

◆ xine_pool_put()

void xine_pool_put ( xine_pool_t pool,
void *  object 
)