diff --git a/src/libCom/freeList/Makefile b/src/libCom/freeList/Makefile index f5afa3de5..3a1e25182 100644 --- a/src/libCom/freeList/Makefile +++ b/src/libCom/freeList/Makefile @@ -8,6 +8,7 @@ # This is a Makefile fragment, see src/libCom/Makefile. SRC_DIRS += $(LIBCOM)/freeList + INC += freeList.h + Com_SRCS += freeListLib.c -HTMLS += freeList/freeList.html diff --git a/src/libCom/freeList/freeList.html b/src/libCom/freeList/freeList.html deleted file mode 100644 index 853cf9d35..000000000 --- a/src/libCom/freeList/freeList.html +++ /dev/null @@ -1,85 +0,0 @@ -/*************************************************************************\ -* Copyright (c) 2002 The University of Chicago, as Operator of Argonne -* National Laboratory. -* Copyright (c) 2002 The Regents of the University of California, as -* Operator of Los Alamos National Laboratory. -* EPICS BASE Versions 3.13.7 -* and higher are distributed subject to a Software License Agreement found -* in file LICENSE that is included with this distribution. -\*************************************************************************/ - -
-- - --
- --
- freeList.c - General Purpose memory free list library - - --
- freeListInitPvt - Initialize a free list - freeListCalloc - Allocate and initialize to zero a new element - freeListMalloc - Allocate a new element - freeListFree - Free an element,i.e. put on free list - - - void freeListInitPvt(void **ppvt,int size,int nmalloc); - void *freeListCalloc(void *pvt); - void *freeListMalloc(void *pvt); - size_t freeListItemsAvail(void *pvt); - void freeListFree(void *pvt,void*pmem); - - where : - - pvt - For private use by library. Caller must provide a "void *pvt" - size - Size in butes of each element. Note that all elements must be same size - nmalloc - Number of elements top allocate when regular malloc must be called. - - - --
- This library can be used to allocate and free fixed size - memory elements. Free elements are maintained on a free - list rather then being returned to the heap via calls to - free. When it is necessary to call malloc, memory can be - allocated in multiples of the element size. - - --
- freeListCalloc and freeListMalloc return address of element allocated - or NULL if no more memory could be obtained via call to malloc - - --
- freeLib.h - - - - - - - - - - - - - - - --
- - --
- --
- gpHash.c - General Purpose Hash Library - - --
- gphInitPvt - Initialize
- gphFind - Find an element taht has been hashed
- gphAdd - Add a new entry
- gphDelete - Delete an entry
- gphFreeMem - Free all memory allocated by gpHash
- gphDump - Dump current members
-
-
- typedef struct{
- ELLNODE node;
- char *name; /*address of name placed in directory*/
- void *pvtid; /*private name for subsystem user*/
- void *userPvt; /*private for user*/
- } GPHENTRY;
-
- void gphInitPvt(void **ppvt);
- GPHENTRY *gphFind(void *pvt,const char *name,void *pvtid);
- GPHENTRY *gphAdd(void *pvt,const char *name,void *pvtid);
- void gphDelete(void *pvt,const char *name,void *pvtid);
- void gphFreeMem(void *pvt);
- void gphDump(void *pvt);
-
-
- where :
-
- pvt - For private use by library. Caller must provide a "void *pvt"
- name - The character string that will be hashed and added to table
- pvtid - The name plus value of this pointer constitute unique entry
-
-
-
-
-- This library provides a general purpose directory of names - that is accessed via a hash table. The hash table contains - 256 entries. Each entry is a list of members that hash to - the same value. The user can maintain seperate directories - via the same table by having a different pvtid for each - directory. - - --
- gphFind returns the address of the GPHENTRY describing the entry or NULL if name was not found. - gphAdd returns the address of the new GPHENTRY describing the entry or NULL if name was already - present. - - --
- gpHash.h - - - --
- Fast Hashing of Variable Length Text Strings, Peter K. Pear- - son, Communications of the ACM, June 1990 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --