linked_list.h File Reference

#include "common.h"
#include "config.h"
#include "collection.h"
#include "mempool.h"

Go to the source code of this file.

Data Structures

struct  _cp_list_entry
struct  _cp_list
struct  _cp_list_iterator
#define cp_list_rdlock(list)   cp_list_lock(list, COLLECTION_LOCK_READ)
#define cp_list_wrlock(list)   cp_list_lock(list, COLLECTION_LOCK_WRITE)
typedef CPROPS_DLL struct
_cp_list 
cp_list
typedef CPROPS_DLL struct
_cp_list_iterator 
cp_list_iterator
CPROPS_DLL cp_listcp_list_create ()
CPROPS_DLL cp_listcp_list_create_nosync ()
CPROPS_DLL cp_listcp_list_create_list (int mode, cp_compare_fn compare_fn, cp_copy_fn copy_fn, cp_destructor_fn item_destructor)
CPROPS_DLL cp_listcp_list_create_view (int mode, cp_compare_fn compare_fn, cp_copy_fn copy_fn, cp_destructor_fn item_destructor, cp_lock *lock)
CPROPS_DLL void cp_list_destroy (cp_list *)
CPROPS_DLL void cp_list_destroy_by_option (cp_list *list, int option)
CPROPS_DLL void cp_list_destroy_custom (cp_list *list, cp_destructor_fn fn)
CPROPS_DLL void * cp_list_insert (cp_list *list, void *item)
CPROPS_DLL void * cp_list_remove (cp_list *list, void *item)
CPROPS_DLL void * cp_list_insert_after (cp_list *list, void *item, void *existing)
CPROPS_DLL void * cp_list_insert_before (cp_list *list, void *item, void *existing)
CPROPS_DLL void * cp_list_search (cp_list *list, void *item)
CPROPS_DLL int cp_list_callback (cp_list *l, int(*item_action)(void *, void *), void *id)
CPROPS_DLL void * cp_list_append (cp_list *list, void *item)
CPROPS_DLL void * cp_list_get_head (cp_list *list)
CPROPS_DLL void * cp_list_get_tail (cp_list *list)
CPROPS_DLL void * cp_list_remove_head (cp_list *list)
CPROPS_DLL void * cp_list_remove_tail (cp_list *list)
CPROPS_DLL int cp_list_is_empty (cp_list *list)
CPROPS_DLL long cp_list_item_count (cp_list *)
CPROPS_DLL int cp_list_lock (cp_list *list, int mode)
CPROPS_DLL int cp_list_unlock (cp_list *list)
CPROPS_DLL int cp_list_use_mempool (cp_list *list, cp_mempool *pool)
CPROPS_DLL int cp_list_share_mempool (cp_list *list, cp_shared_mempool *pool)
CPROPS_DLL int cp_list_iterator_init (cp_list_iterator *iterator, cp_list *list, int lock_mode)
CPROPS_DLL int cp_list_iterator_init_tail (cp_list_iterator *iterator, cp_list *list, int lock_mode)
CPROPS_DLL cp_list_iteratorcp_list_create_iterator (cp_list *list, int lock_mode)
CPROPS_DLL int cp_list_iterator_head (cp_list_iterator *iterator)
CPROPS_DLL int cp_list_iterator_tail (cp_list_iterator *iterator)
CPROPS_DLL int cp_list_iterator_destroy (cp_list_iterator *iterator)
CPROPS_DLL int cp_list_iterator_release (cp_list_iterator *iterator)
CPROPS_DLL void * cp_list_iterator_next (cp_list_iterator *iterator)
CPROPS_DLL void * cp_list_iterator_prev (cp_list_iterator *iterator)
CPROPS_DLL void * cp_list_iterator_curr (cp_list_iterator *iterator)
CPROPS_DLL void * cp_list_iterator_insert (cp_list_iterator *iterator, void *item)
CPROPS_DLL void * cp_list_iterator_append (cp_list_iterator *iterator, void *item)
CPROPS_DLL void * cp_list_iterator_remove (cp_list_iterator *iterator)
__BEGIN_DECLS typedef CPROPS_DLL
struct _cp_list_entry 
cp_list_entry


Detailed Description

linked list definitions

Definition in file linked_list.h.


Define Documentation

#define cp_list_rdlock ( list   )     cp_list_lock(list, COLLECTION_LOCK_READ)

Set a read lock on the object.

Definition at line 217 of file linked_list.h.

#define cp_list_wrlock ( list   )     cp_list_lock(list, COLLECTION_LOCK_WRITE)

Set a write lock on the object.

Definition at line 222 of file linked_list.h.


Typedef Documentation

typedef CPROPS_DLL struct _cp_list cp_list

doubly linked list type.

typedef CPROPS_DLL struct _cp_list_iterator cp_list_iterator

iterator helper-class of cp_list.


Variable Documentation

__BEGIN_DECLS typedef CPROPS_DLL struct _cp_list_entry cp_list_entry

Internal object that references the content and links to the neighbour entries.

Referenced by cp_list_append(), cp_list_callback(), cp_list_destroy_internal(), cp_list_insert(), cp_list_insert_after(), cp_list_insert_before(), cp_list_iterator_append(), cp_list_iterator_insert(), cp_list_iterator_remove(), cp_list_remove(), cp_list_remove_head(), cp_list_remove_tail(), cp_list_search(), cp_list_share_mempool(), and cp_list_use_mempool().


Generated on Mon Dec 5 23:00:22 2011 for cprops by  doxygen 1.4.7