#include "cpl_port.h"
Go to the source code of this file.
Classes | |
struct | _CPLList |
Typedefs | |
typedef struct _CPLList | CPLList |
Functions | |
CPLList * | CPLListAppend (CPLList *psList, void *pData) |
CPLList * | CPLListInsert (CPLList *psList, void *pData, int nPosition) |
CPLList * | CPLListGetLast (CPLList *psList) |
CPLList * | CPLListGet (CPLList *psList, int nPosition) |
int | CPLListCount (CPLList *psList) |
CPLList * | CPLListRemove (CPLList *psList, int nPosition) |
void | CPLListDestroy (CPLList *psList) |
CPLList * | CPLListGetNext (CPLList *psElement) |
void * | CPLListGetData (CPLList *psElement) |
Simplest list implementation. List contains only pointers to stored objects, not objects itself. All operations regarding allocation and freeing memory for objects should be performed by the caller.
Append an object list and return a pointer to the modified list. If the input list is NULL, then a new list is created.
psList | pointer to list head. | |
pData | pointer to inserted data object. May be NULL. |
References _CPLList::pData, and _CPLList::psNext.
int CPLListCount | ( | CPLList * | psList | ) |
Return the number of elements in a list.
psList | pointer to list head. |
References _CPLList::psNext.
void CPLListDestroy | ( | CPLList * | psList | ) |
Destroy a list. Caller responsible for freeing data objects contained in list elements.
psList | pointer to list head. |
References _CPLList::psNext.
Return the pointer to the specified element in a list.
psList | pointer to list head. | |
nPosition | the index of the element in the list, 0 being the first element |
References _CPLList::psNext.
void* CPLListGetData | ( | CPLList * | psElement | ) |
Return pointer to the data object contained in given list element.
psElement | pointer to list element. |
References _CPLList::pData.
Return the pointer to last element in a list.
psList | pointer to list head. |
References _CPLList::psNext.
Return the pointer to next element in a list.
psElement | pointer to list element. |
References _CPLList::psNext.
Insert an object into list at specified position (zero based). If the input list is NULL, then a new list is created.
psList | pointer to list head. | |
pData | pointer to inserted data object. May be NULL. | |
nPosition | position number to insert an object. |
References _CPLList::pData, and _CPLList::psNext.
Remove the element from the specified position (zero based) in a list. Data object contained in removed element must be freed by the caller first.
psList | pointer to list head. | |
nPosition | position number to delet an element. |
References _CPLList::psNext.