- struct CFile_head {
- int state; /* 1 = hash, 2 = flat */
- zint next_block; /* next free block / last block */
- int block_size; /* mfile/bfile block size */
- int hash_size; /* no of chains in hash table */
- zint first_bucket; /* first hash bucket */
- zint next_bucket; /* last hash bucket + 1 = first flat bucket */
- zint flat_bucket; /* last flat bucket + 1 */
- } head;
- MFile block_mf;
- MFile hash_mf;
- zint *array;
- struct CFile_hash_bucket **parray;
- struct CFile_hash_bucket *bucket_lru_front, *bucket_lru_back;
- int dirty;
- zint bucket_in_memory;
- zint max_bucket_in_memory;
- char *iobuf;
- MFile rmf;
- int no_hits;
- int no_miss;
+ struct CFile_head head;
+
+ MFile block_mf; /**< block meta file */
+ MFile hash_mf; /**< hash or index file (depending on state) */
+ zint *array; /**< array for hash */
+ struct CFile_hash_bucket **parray; /**< holds all hash bucket in memory */
+ struct CFile_hash_bucket *bucket_lru_front; /**< LRU front for hash */
+ struct CFile_hash_bucket *bucket_lru_back; /**< LRU back for hash */
+ int dirty; /**< whether CFile is dirty / header must be rewritten */
+ zint bucket_in_memory; /**< number of buckets in memory */
+ zint max_bucket_in_memory; /**< max number of buckets in memory */
+ char *iobuf; /**< data block .. of size block size */
+ MFile rmf; /**< read meta file (original data / not dirty) */
+ int no_hits; /**< number of bucket cache hits */
+ int no_miss; /**< number of bucket cache misses */