Ifpack Package Browser (Single Doxygen Collection)  Development
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Macros | Typedefs | Functions
Hash_dh.h File Reference
#include "euclid_common.h"
Include dependency graph for Hash_dh.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _hash_node
 
struct  _hash_dh
 

Macros

#define HASH_1(k, size, idxOut)   { *idxOut = k % size; }
 
#define HASH_2(k, size, idxOut)
 

Typedefs

typedef struct _hash_node HashData
 
typedef struct _hash_node_private HashRecord
 

Functions

void Hash_dhCreate (Hash_dh *h, int size)
 
void Hash_dhDestroy (Hash_dh h)
 
void Hash_dhInsert (Hash_dh h, int key, HashData *data)
 
HashDataHash_dhLookup (Hash_dh h, int key)
 
void Hash_dhReset (Hash_dh h)
 
void Hash_dhPrint (Hash_dh h, FILE *fp)
 

Macro Definition Documentation

#define HASH_1 (   k,
  size,
  idxOut 
)    { *idxOut = k % size; }

Definition at line 94 of file Hash_dh.h.

#define HASH_2 (   k,
  size,
  idxOut 
)
Value:
{ \
int r = k % (size-13); \
r = (r % 2) ? r : r+1; \
*idxOut = r; \
}

Definition at line 97 of file Hash_dh.h.

Typedef Documentation

typedef struct _hash_node HashData

Definition at line 72 of file Hash_dh.h.

Function Documentation

void Hash_dhCreate ( Hash_dh h,
int  size 
)

Definition at line 63 of file Hash_dh.c.

void Hash_dhDestroy ( Hash_dh  h)

Definition at line 82 of file Hash_dh.c.

void Hash_dhInsert ( Hash_dh  h,
int  key,
HashData data 
)

Definition at line 174 of file Hash_dh.c.

HashData* Hash_dhLookup ( Hash_dh  h,
int  key 
)

Definition at line 139 of file Hash_dh.c.

void Hash_dhReset ( Hash_dh  h)

Definition at line 96 of file Hash_dh.c.

void Hash_dhPrint ( Hash_dh  h,
FILE *  fp 
)

Definition at line 206 of file Hash_dh.c.