libcdio  0.90
Defines | Typedefs | Functions
ds.h File Reference

The top-level header for list-related data structures. More...

#include <cdio/types.h>

Go to the source code of this file.

Defines

#define CdioList   CdioList_t
#define CdioListNode   CdioListNode_t
#define _cdio_list_cmp_func   _cdio_list_cmp_func_t
#define _cdio_list_iterfunc   _cdio_list_iterfunc_t
#define _CDIO_LIST_FOREACH(node, list)   for (node = _cdio_list_begin (list); node; node = _cdio_list_node_next (node))

Typedefs

typedef struct _CdioList CdioList_t
typedef struct _CdioListNode CdioListNode_t
typedef int(* _cdio_list_cmp_func_t )(void *p_data1, void *p_data2)
typedef int(* _cdio_list_iterfunc_t )(void *p_data, void *p_user_data)

Functions

CdioList_t_cdio_list_new (void)
void _cdio_list_free (CdioList_t *p_list, int free_data)
unsigned _cdio_list_length (const CdioList_t *list)
void _cdio_list_prepend (CdioList_t *p_list, void *p_data)
void _cdio_list_append (CdioList_t *p_list, void *p_data)
void _cdio_list_foreach (CdioList_t *p_list, _cdio_list_iterfunc_t func, void *p_user_data)
CdioListNode_t_cdio_list_find (CdioList_t *p_list, _cdio_list_iterfunc_t cmp_func, void *p_user_data)
CdioListNode_t_cdio_list_begin (const CdioList_t *p_list)
CdioListNode_t_cdio_list_end (CdioList_t *p_list)
CdioListNode_t_cdio_list_node_next (CdioListNode_t *p_node)
void _cdio_list_node_free (CdioListNode_t *p_node, int i_free_data)
void * _cdio_list_node_data (CdioListNode_t *p_node)

Detailed Description

The top-level header for list-related data structures.

Note: this header will is slated to get removed and libcdio will use glib.h routines instead.


Define Documentation

#define _CDIO_LIST_FOREACH (   node,
  list 
)    for (node = _cdio_list_begin (list); node; node = _cdio_list_node_next (node))
#define CdioList   CdioList_t

The below are given compatibility with old code. Please use the above type names, not these.


Typedef Documentation

typedef int(* _cdio_list_cmp_func_t)(void *p_data1, void *p_data2)
typedef int(* _cdio_list_iterfunc_t)(void *p_data, void *p_user_data)
typedef struct _CdioList CdioList_t

opaque types...

typedef struct _CdioListNode CdioListNode_t

Function Documentation

void _cdio_list_append ( CdioList_t p_list,
void *  p_data 
)

node operations

CdioListNode_t* _cdio_list_find ( CdioList_t p_list,
_cdio_list_iterfunc_t  cmp_func,
void *  p_user_data 
)
void _cdio_list_foreach ( CdioList_t p_list,
_cdio_list_iterfunc_t  func,
void *  p_user_data 
)
void _cdio_list_free ( CdioList_t p_list,
int  free_data 
)
unsigned _cdio_list_length ( const CdioList_t list)

methods

void* _cdio_list_node_data ( CdioListNode_t p_node)
void _cdio_list_node_free ( CdioListNode_t p_node,
int  i_free_data 
)
void _cdio_list_prepend ( CdioList_t p_list,
void *  p_data 
)