X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/ad5365a072943b2b0bacc486fa504e93a99ea940..dff9e15c44ab6340d27215957c56fa72fad246a2:/src/xbt/dict_private.h diff --git a/src/xbt/dict_private.h b/src/xbt/dict_private.h index c037eb7e88..9ec22a9c34 100644 --- a/src/xbt/dict_private.h +++ b/src/xbt/dict_private.h @@ -20,11 +20,16 @@ typedef struct xbt_dictelm_ *xbt_dictelm_t; +#define MAX_FILL_PERCENT 80 + typedef struct xbt_dictelm_ { char *key; int key_len; + unsigned int hash_code; + void *content; - void_f_pvoid_t *free_f; + void_f_pvoid_t free_f; + xbt_dictelm_t next; } s_xbt_dictelm_t; @@ -32,22 +37,21 @@ typedef struct xbt_dict_ { xbt_dictelm_t *table; int table_size; int count; + int fill; } s_xbt_dict_t; typedef struct xbt_dict_cursor_ s_xbt_dict_cursor_t; extern xbt_mallocator_t dict_elm_mallocator; -XBT_PUBLIC(extern void*) dict_elm_mallocator_new_f(void); -XBT_PUBLIC(extern void) dict_elm_mallocator_free_f(void* elem); -XBT_PUBLIC(extern void) dict_elm_mallocator_reset_f(void* elem); +extern void *dict_elm_mallocator_new_f(void); +extern void dict_elm_mallocator_free_f(void *elem); +extern void dict_elm_mallocator_reset_f(void *elem); /*####[ Function prototypes ]################################################*/ -XBT_PUBLIC(xbt_dictelm_t) xbt_dictelm_new(const char *key, - int key_len, - void *content, - void_f_pvoid_t free_f, - xbt_dictelm_t next); -XBT_PUBLIC(void) xbt_dictelm_free(xbt_dictelm_t element); -XBT_PUBLIC(void) xbt_dict_add_element(xbt_dict_t dict, xbt_dictelm_t element); - -#endif /* _XBT_DICT_PRIVATE_H_ */ +xbt_dictelm_t xbt_dictelm_new(const char *key, int key_len, + unsigned int hash_code, void *content, + void_f_pvoid_t free_f); +void xbt_dictelm_free(xbt_dictelm_t element); +void xbt_dict_add_element(xbt_dict_t dict, xbt_dictelm_t element); + +#endif /* _XBT_DICT_PRIVATE_H_ */