Files @ dcd49517f90b
Branch filter:

Location: EI/VirtualLeaf/lib/libxml2/include/libxml/list.h - annotation

Roeland Merks
Two last corrections:
- Viewport was not written during automatic export of XML files, because Virtualization of XMLSettingsTree did not work due to inconsistent function definition (const vs. non-const)
- Some of the default parameter-file had "Start saving movie frames" switched on by default, dramatically slowing down the example runs. Now it is switched off in all example XML files.

user: Roeland Merks <roeland.merks@cwi.nl>
branch 'default'
changed data/leaves/auxin_growth.xml
changed data/leaves/tutorial5_init.xml
changed src/VirtualLeaf.cpp
changed src/mainbase.cpp
changed src/mainbase.h
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
bc383c25c970
/*
 * Summary: lists interfaces
 * Description: this module implement the list support used in 
 * various place in the library.
 *
 * Copy: See Copyright for the status of this software.
 *
 * Author: Gary Pennington <Gary.Pennington@uk.sun.com>
 */

#ifndef __XML_LINK_INCLUDE__
#define __XML_LINK_INCLUDE__

#include <libxml/xmlversion.h>

#ifdef __cplusplus
extern "C" {
#endif

typedef struct _xmlLink xmlLink;
typedef xmlLink *xmlLinkPtr;

typedef struct _xmlList xmlList;
typedef xmlList *xmlListPtr;

/**
 * xmlListDeallocator:
 * @lk:  the data to deallocate
 *
 * Callback function used to free data from a list.
 */
typedef void (*xmlListDeallocator) (xmlLinkPtr lk);
/**
 * xmlListDataCompare:
 * @data0: the first data
 * @data1: the second data
 *
 * Callback function used to compare 2 data.
 *
 * Returns 0 is equality, -1 or 1 otherwise depending on the ordering.
 */
typedef int  (*xmlListDataCompare) (const void *data0, const void *data1);
/**
 * xmlListWalker:
 * @data: the data found in the list
 * @user: extra user provided data to the walker
 *
 * Callback function used when walking a list with xmlListWalk().
 *
 * Returns 0 to stop walking the list, 1 otherwise.
 */
typedef int (*xmlListWalker) (const void *data, const void *user);

/* Creation/Deletion */
XMLPUBFUN xmlListPtr XMLCALL
		xmlListCreate		(xmlListDeallocator deallocator,
	                                 xmlListDataCompare compare);
XMLPUBFUN void XMLCALL		
		xmlListDelete		(xmlListPtr l);

/* Basic Operators */
XMLPUBFUN void * XMLCALL		
		xmlListSearch		(xmlListPtr l,
					 void *data);
XMLPUBFUN void * XMLCALL		
		xmlListReverseSearch	(xmlListPtr l,
					 void *data);
XMLPUBFUN int XMLCALL		
		xmlListInsert		(xmlListPtr l,
					 void *data) ;
XMLPUBFUN int XMLCALL		
		xmlListAppend		(xmlListPtr l,
					 void *data) ;
XMLPUBFUN int XMLCALL		
		xmlListRemoveFirst	(xmlListPtr l,
					 void *data);
XMLPUBFUN int XMLCALL		
		xmlListRemoveLast	(xmlListPtr l,
					 void *data);
XMLPUBFUN int XMLCALL		
		xmlListRemoveAll	(xmlListPtr l,
					 void *data);
XMLPUBFUN void XMLCALL		
		xmlListClear		(xmlListPtr l);
XMLPUBFUN int XMLCALL		
		xmlListEmpty		(xmlListPtr l);
XMLPUBFUN xmlLinkPtr XMLCALL	
		xmlListFront		(xmlListPtr l);
XMLPUBFUN xmlLinkPtr XMLCALL	
		xmlListEnd		(xmlListPtr l);
XMLPUBFUN int XMLCALL		
		xmlListSize		(xmlListPtr l);

XMLPUBFUN void XMLCALL		
		xmlListPopFront		(xmlListPtr l);
XMLPUBFUN void XMLCALL		
		xmlListPopBack		(xmlListPtr l);
XMLPUBFUN int XMLCALL		
		xmlListPushFront	(xmlListPtr l,
					 void *data);
XMLPUBFUN int XMLCALL		
		xmlListPushBack		(xmlListPtr l,
					 void *data);

/* Advanced Operators */
XMLPUBFUN void XMLCALL		
		xmlListReverse		(xmlListPtr l);
XMLPUBFUN void XMLCALL		
		xmlListSort		(xmlListPtr l);
XMLPUBFUN void XMLCALL		
		xmlListWalk		(xmlListPtr l,
					 xmlListWalker walker,
					 const void *user);
XMLPUBFUN void XMLCALL		
		xmlListReverseWalk	(xmlListPtr l,
					 xmlListWalker walker,
					 const void *user);
XMLPUBFUN void XMLCALL		
		xmlListMerge		(xmlListPtr l1,
					 xmlListPtr l2);
XMLPUBFUN xmlListPtr XMLCALL	
		xmlListDup		(const xmlListPtr old);
XMLPUBFUN int XMLCALL		
		xmlListCopy		(xmlListPtr cur,
					 const xmlListPtr old);
/* Link operators */
XMLPUBFUN void * XMLCALL          
		xmlLinkGetData          (xmlLinkPtr lk);

/* xmlListUnique() */
/* xmlListSwap */

#ifdef __cplusplus
}
#endif

#endif /* __XML_LINK_INCLUDE__ */