cr_hash.h revision ebc248f21b276416f76e20da3add001aff9fc30a
/* Copyright (c) 2001, Stanford University
* All rights reserved.
*
* See the file LICENSE.txt for information on redistributing this software.
*/
#ifndef CR_HASH_H
#define CR_HASH_H
#include "chromium.h"
#ifdef __cplusplus
extern "C" {
#endif
typedef struct CRHashTable CRHashTable;
typedef void (*CRHashtableCallback)(void *data);
/* Callback function used for walking through table entries */
DECLEXPORT(void) crHashtableDelete( CRHashTable *h, unsigned long key, CRHashtableCallback deleteCallback );
DECLEXPORT(void) crHashtableDeleteBlock( CRHashTable *h, unsigned long key, GLsizei range, CRHashtableCallback deleteFunc );
DECLEXPORT(void) crHashtableReplace( CRHashTable *h, unsigned long key, void *data, CRHashtableCallback deleteFunc);
DECLEXPORT(void) crHashtableWalk( CRHashTable *hash, CRHashtableWalkCallback walkFunc , void *data);
/*Returns GL_TRUE if given hashtable hold the data, pKey is updated with key value for data in this case*/
#ifdef __cplusplus
} /* extern "C" */
#endif
#endif /* CR_HASH_H */