CONTAINERS

Abstract class for template containers. More...

Classes

class  gim_array< T >
 Very simple array container with fast access and simd memory. More...
class  gim_bitset
struct  GIM_HASH_TABLE_NODE< T >
class  GIM_HASH_NODE_GET_KEY
 Macro for getting the key. More...
class  GIM_HASH_NODE_CMP_KEY_MACRO
 Macro for comparing the key and the element. More...
class  GIM_HASH_NODE_CMP_MACRO
 Macro for comparing Hash nodes. More...
class  gim_hash_table< T >
 A compact hash table implementation. More...

Defines

#define GIM_ARRAY_GROW_INCREMENT   2
#define GIM_ARRAY_GROW_FACTOR   2
#define GUINT_BIT_COUNT   32
#define GUINT_EXPONENT   5
#define GIM_INVALID_HASH   0xffffffff
 A very very high value.
#define GIM_DEFAULT_HASH_TABLE_SIZE   380
#define GIM_DEFAULT_HASH_TABLE_NODE_SIZE   4
#define GIM_HASH_TABLE_GROW_FACTOR   2
#define GIM_MIN_RADIX_SORT_SIZE   860
 calibrated on a PIII
#define GIM_NUM_PRIME   28

Functions

template<typename T>
void gim_sort_hash_node_array (T *array, GUINT array_count)
 Sorting for hash table.
GUINT gim_next_prime (GUINT number)

Variables

static const GUINT gim_prime_list [GIM_NUM_PRIME]

Detailed Description

Abstract class for template containers.


Define Documentation

#define GIM_ARRAY_GROW_FACTOR   2

#define GIM_ARRAY_GROW_INCREMENT   2

#define GIM_DEFAULT_HASH_TABLE_NODE_SIZE   4

#define GIM_DEFAULT_HASH_TABLE_SIZE   380

#define GIM_HASH_TABLE_GROW_FACTOR   2

#define GIM_INVALID_HASH   0xffffffff

A very very high value.

#define GIM_MIN_RADIX_SORT_SIZE   860

calibrated on a PIII

#define GIM_NUM_PRIME   28

#define GUINT_BIT_COUNT   32

#define GUINT_EXPONENT   5


Function Documentation

GUINT gim_next_prime ( GUINT  number  )  [inline]

template<typename T>
void gim_sort_hash_node_array ( T *  array,
GUINT  array_count 
) [inline]

Sorting for hash table.

switch automatically between quicksort and radixsort


Variable Documentation

const GUINT gim_prime_list[GIM_NUM_PRIME] [static]

Initial value:

{
  53ul,         97ul,         193ul,       389ul,       769ul,
  1543ul,       3079ul,       6151ul,      12289ul,     24593ul,
  49157ul,      98317ul,      196613ul,    393241ul,    786433ul,
  1572869ul,    3145739ul,    6291469ul,   12582917ul,  25165843ul,
  50331653ul,   100663319ul,  201326611ul, 402653189ul, 805306457ul,
  1610612741ul, 3221225473ul, 4294967291ul
}


Generated on Wed Jun 13 16:58:21 2007 for GIMPACT by  doxygen 1.5.2