|
ATLAS Offline Software
|
Go to the documentation of this file.
66 #ifndef ALGORITHM_SLIST_H
67 #define ALGORITHM_SLIST_H
107 #define SLIST_NULL ((void *) 0)
JetConstituentVector::iterator iterator
void slist_iterate(SListEntry **list, SListIterator *iter)
Initialise a SListIterator structure to iterate over a list.
int(* SListCompareFunc)(SListValue value1, SListValue value2)
Callback function used to compare values in a list when sorting.
char data[hepevt_bytes_allocation_ATLAS]
SListEntry * slist_find_data(SListEntry *list, SListEqualFunc callback, SListValue data)
Find the entry for a particular value in a list.
int slist_remove_data(SListEntry **list, SListEqualFunc callback, SListValue data)
Remove all occurrences of a particular value from a list.
SListValue slist_nth_data(SListEntry *list, int n)
Retrieve the value stored at a specified index in the list.
SListValue slist_iter_next(SListIterator *iterator)
Using a list iterator, retrieve the next value from the list.
void slist_free(SListEntry *list)
Free an entire list.
SListEntry * slist_prepend(SListEntry **list, SListValue data)
Prepend a value to the start of a list.
SListEntry * slist_append(SListEntry **list, SListValue data)
Append a value to the end of a list.
int(* SListEqualFunc)(SListValue value1, SListValue value2)
Callback function used to determine of two values in a list are equal.
int slist_iter_has_more(SListIterator *iterator)
Determine if there are more values in the list to iterate over.
SListValue slist_data(SListEntry *listentry)
Retrieve the value stored at a list entry.
int slist_remove_entry(SListEntry **list, SListEntry *entry)
Remove an entry from a list.
SListEntry * slist_next(SListEntry *listentry)
Retrieve the next entry in a list.
int slist_length(SListEntry *list)
Find the length of a list.
void * SListValue
Value stored in a list.
struct _SListEntry SListEntry
Represents an entry in a singly-linked list.
SListEntry * slist_nth_entry(SListEntry *list, int n)
Retrieve the entry at a specified index in a list.
void slist_iter_remove(SListIterator *iterator)
Delete the current entry in the list (the value last returned from slist_iter_next)
Definition of a SListIterator.
SListValue * slist_to_array(SListEntry *list)
Create a C array containing the contents of a list.
void slist_sort(SListEntry **list, SListCompareFunc compare_func)
Sort a list.