Header file of Circular List Management related APIs. More...
#include <clCommon.h>
Go to the source code of this file.
Typedefs | |
typedef ClPtrT | ClClistDataT |
The type of the handle for the user-data. | |
typedef void(* | ClClistDeleteCallbackT )(CL_IN ClClistDataT userData) |
Delete callback gets called, whenever a Node is getting deleted. | |
typedef ClPtrT | ClClistNodeT |
The type of the handle for the circular node. | |
typedef ClPtrT | ClClistT |
The type of the handle for the circular list. | |
typedef ClRcT(* | ClClistWalkCallbackT )(CL_IN ClClistDataT userData, CL_IN void *userArg) |
Walk Callback gets called, whenever traverse happens on the Circular linked list. |
Enumerations | |
enum | ClClistDropPolicyT { CL_NO_DROP = 0, CL_DROP_FIRST, CL_DROP_MAX_TYPE } |
link list with x nodes. More... |
Functions | |
ClRcT | clClistAfterNodeAdd (CL_IN ClClistT listHead, CL_IN ClClistNodeT currentNode, CL_IN ClClistDataT userData) |
Adds a node after a specified node in the list. | |
ClRcT | clClistBeforeNodeAdd (CL_IN ClClistT listHead, CL_IN ClClistNodeT currentNode, CL_IN ClClistDataT userData) |
Adds a node before a specified node in the list. | |
ClRcT | clClistCreate (CL_IN ClUint32T maxSize, CL_IN ClClistDropPolicyT dropPolicy, CL_IN ClClistDeleteCallbackT fpUserDeleteCallBack, CL_IN ClClistDeleteCallbackT fpUserDestroyCallBack, CL_OUT ClClistT *pListHead) |
Creates a Circular Linked List. | |
ClRcT | clClistDataGet (CL_IN ClClistT listHead, CL_IN ClClistNodeT node, CL_OUT ClClistDataT *pUserData) |
Retrieves data from a node in the list. | |
ClRcT | clClistDelete (CL_IN ClClistT *pListHead) |
Destroys the list. | |
ClRcT | clClistFirstNodeAdd (CL_IN ClClistT listHead, CL_IN ClClistDataT userData) |
Adds a node at the beginning of the list. | |
ClRcT | clClistFirstNodeGet (CL_IN ClClistT listHead, CL_IN ClClistNodeT *pFirstNode) |
Returns the first node from the list. | |
ClRcT | clClistLastNodeAdd (CL_IN ClClistT listHead, CL_IN ClClistDataT userData) |
Adds a node at the end of the list. | |
ClRcT | clClistLastNodeGet (CL_IN ClClistT listHead, CL_OUT ClClistNodeT *pLastNode) |
Returns last node from the list. | |
ClRcT | clClistNextNodeGet (CL_IN ClClistT listHead, CL_IN ClClistNodeT currentNode, CL_OUT ClClistNodeT *pNextNode) |
Returns next node from the list. | |
ClRcT | clClistNodeDelete (CL_IN ClClistT listHead, CL_IN ClClistNodeT node) |
Deletes a node from the list. | |
ClRcT | clClistPreviousNodeGet (CL_IN ClClistT listHead, CL_IN ClClistNodeT currentNode, CL_OUT ClClistNodeT *pPreviousNode) |
Returns next node from the list. | |
ClRcT | clClistSizeGet (CL_IN ClClistT listHead, CL_OUT ClUint32T *pSize) |
Returns number of data elements (nodes) in the list. | |
ClRcT | clClistWalk (CL_IN ClClistT listHead, CL_IN ClClistWalkCallbackT fpUserWalkCallBack, CL_IN void *userArg) |
Walks through the list. |
Header file of Circular List Management related APIs.