|
file | Alc.h [code] |
| Main (top-level) header file for the Woolz type allocation library.
|
|
file | AlcAlloc.c |
| Provides functions for basic storage allocation. In their most basic form are simple wrappers for the ANSI functions malloc(3), calloc(3), realloc(3) and free(3) but they may be used to encapsulate more complex allocation such as for persistant storage.
|
|
file | AlcArray.c |
| Provides functions for the allocation of 1, 2 and 3D arrays of types char, short, int, float and double. Extension to other types (including user defined types) should be straight formward through templates defined in AlcTemplates.h.
|
|
file | AlcBlockStack.c |
| A general purpose memory block allocator. Blocks are allocated and stored in on a stack.
|
|
file | AlcCPQueue.c |
| An \(O(1)\) priority queue based on algorithms from: Brown R, 1988. Calendar Queues: A Fast {O}(1)Priority Queue Implementation for the Simulation Event Set Problem. Communications of the ACM 31(10), 1220-1227. The priority queue has an \(O(1)\) time for insertion unlinking and holding of queue items with a favorable constant when compared to tree based priority queue data structures such as splay trees. Results presented by Brown show that this data structure outperforms tree based implementations and that simple ordered linked lists with \(O(n)\) operations outperform both calendar queues and tree based queues when there are less than ten items in the queue.
|
|
file | AlcDLPList.c |
| A general purpose doubly linked circular list of pointers.
|
|
file | AlcFreeStack.c |
| A general purpose free stack which allows a single pointer to be used to keep a list of data to be free'd.
|
|
file | AlcHashTable.c |
| A general purpose hash table.
|
|
file | AlcHeap.c |
| A basic heap data structure which uses an array.
|
|
file | AlcKDTree.c |
| A general purpose, arbitrary dimension, integer/floating point binary space partition tree (kD-tree).
|
|
file | AlcLRUCache.c |
| A cache allowing rank and key access to it's entries. The cache is maintained using a maximum number of items and maximum total entry size.
|
|
file | AlcString.c |
| Provides functions for string duplication.
|
|
file | AlcTemplates.h [code] |
| Templates used by the 'C' pre-processor to generate the body of the Woolz array allocation functions and the associated freeing functions.
|
|
file | AlcType.h [code] |
| Type definitions for the Woolz type allocation library.
|
|
file | AlcUFTree.c |
| A general purpose union tree based on Sedgewick's Weighted Quick Union Find, see Robert Sedgewick, Kevin Wayne "Algorithms (4th Edition)". There is very little parameter checking in these functions and all given parameters must be valid.
|
|
file | AlcVector.c |
| A general purpose 1D vector (extensible array).
|
|