Loading [MathJax]/extensions/TeX/AMSsymbols.js
LAL 7.7.0.1-5e288d3
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
LALHashTbl.h File Reference

Prototypes

LALHashTbl * XLALHashTblCreate (LALHashTblDtorFcn dtor, LALHashTblHashFcn hash, LALHashTblCmpFcn cmp)
 Create a hash table. More...
 
LALHashTbl * XLALHashTblCreate2 (LALHashTblDtorFcn dtor, LALHashTblHashParamFcn hash, void *hash_param, LALHashTblCmpParamFcn cmp, void *cmp_param)
 Create a hash table with parameterised hash and comparison functions. More...
 
void XLALHashTblDestroy (LALHashTbl *ht)
 Destroy a hash table and its elements. More...
 
int XLALHashTblClear (LALHashTbl *ht)
 Clear a hash table. More...
 
int XLALHashTblSize (const LALHashTbl *ht)
 Return the size of a hash table. More...
 
int XLALHashTblFind (const LALHashTbl *ht, const void *x, const void **y)
 Find the element matching x in a hash table; if found, return in *y More...
 
int XLALHashTblAdd (LALHashTbl *ht, void *x)
 Add an element to a hash table. More...
 
int XLALHashTblExtract (LALHashTbl *ht, const void *x, void **y)
 Find the element matching x in a hash table; if found, remove it and return in *y More...
 
int XLALHashTblRemove (LALHashTbl *ht, const void *x)
 Find the element matching x in a hash table; if found, remove and destroy it. More...
 

Go to the source code of this file.

Typedefs

typedef void(* LALHashTblDtorFcn) (void *x)
 Function which free memory associated with hash table element x More...
 
typedef UINT8(* LALHashTblHashFcn) (const void *x)
 Hash function for the hash table element x More...
 
typedef UINT8(* LALHashTblHashParamFcn) (void *param, const void *x)
 Hash function for the hash table element x, with a parameter param. More...
 
typedef int(* LALHashTblCmpFcn) (const void *x, const void *y)
 Function which compares hash table elements x and y More...
 
typedef int(* LALHashTblCmpParamFcn) (void *param, const void *x, const void *y)
 Function which compares hash table elements x and y, with a parameter param. More...