| Name | Type | Description |
|---|---|---|
| BlockOffset | ajulong | Offset within main index |
| Nkeys | ajuint | Number of keys filled |
| TotLen | ajuint | Total length of keys |
| Left | ajulong | Left Sibling |
| Right | ajulong | Right Sibling |
| Overflow | ajulong | Offset to overflow block |
| PrevNode | ajulong | Previous node |
| NodeType | ajuint | Root, Internal or Leaf |
| Padding | char[4] | Padding to alignment boundary |
| Name | Type | Description |
|---|---|---|
| next | struct AjSBtMem* | next node |
| prev | struct AjSBtMem* | previous node |
| karray | AjPStr* | key array (primary trees) |
| parray | ajulong* | pointer arrays (primary and secondary trees) |
| overflows | ajulong* | overflows (primary) and keys (secondary) |
| used | AjBool | node in use |
| Padding | char[4] | Padding to alignment boundary |
| Name | Type | Description |
|---|---|---|
| id | AjPStr | Unique ID |
| dbno | ajuint | Database file number |
| dups | ajuint | Duplicates |
| offset | ajulong | Offset within database file (ftello) |
| refoffset | ajulong | Offset within reference database file (ftello) |
| Name | Type | Description |
|---|---|---|
| id | AjPStr | Wildcard ID |
| pagepos | ajulong | Page number of leaf |
| list | AjPList | list of AjPBtIds |
| first | AjBool | true for first search |
| Padding | char[4] | Padding to alignment boundary |
Key, file number, ftell ID, subkey page (char*, ajuint, ajulong, ajulong)
| Name | Type | Description |
|---|---|---|
| NodeType | ajuint | Node type |
| Maxentries | ajuint | Number of entries available |
| Nentries | ajuint | Number of entries |
| Overflow | ajulong | Offset to overflow block |
| keylen | ajuint* | key lengths |
| Ids | AjPBtId* | Ids |
| Name | Type | Description |
|---|---|---|
| offset | ajulong | Offset within database file (ftello) |
| refoffset | ajulong | Offset within reference database file (ftello) |
| dbno | ajuint | Database file number |
| Padding | char[4] | Padding to alignment boundary |
Key, file number, ftell ID, subkey page (char*, ajuint, ajulong, ajulong)
| Name | Type | Description |
|---|---|---|
| NodeType | ajuint | Node type |
| Maxentries | ajuint | Number of entries available |
| Nentries | ajuint | Number of entries |
| Overflow | ajulong | Offset to overflow block |
| NumId | AjPBtNumId* | secondary tree IDs |
| Name | Type | Description |
|---|---|---|
| pagepos | ajulong | Page number |
| next | struct AjSBtpage* | Next page |
| prev | struct AjSBtpage* | Previous page |
| buf | unsigned char* | Buffer |
| dirty | ajuint | BT_DIRTY if page needs to be written to disc |
| lockfor | ajuint | Reason for last setting of dirty as BT_LOCK |
| Name | Type | Description |
|---|---|---|
| fp | FILE* | Tree index file pointer |
| filename | AjPStr | Filename |
| lru | AjPBtpage | Least recently used cache page |
| mru | AjPBtpage | Most recently used cache page |
| bmem | AjPBtMem | Primary array allocation MRU bottom |
| tmem | AjPBtMem | Primary array allocation MRU top |
| bsmem | AjPBtMem | Secondary array allocation MRU bottom |
| tsmem | AjPBtMem | Secondary array allocation MRU top |
| replace | AjPStr | Replacement ID |
| pagetable | AjPTable | Table of cached pages |
| totsize | ajulong | Tree index total length |
| filesize | ajulong | Tree index length after any compression |
| extendsize | ajulong | Tree index extension block length |
| pagecount | ajulong | Tree index number of pages |
| secrootblock | ajulong | Secondary tree root block |
| numreplace | ajulong | Replacement numeric ID |
| countunique | ajulong | Number of unique tokens indexed |
| countall | ajulong | Number of total tokens indexed |
| cachehits | ajulong | Number of cached page reads |
| reads | ajulong | Number of physical reads from disk |
| writes | ajulong | Number of physical writes to disk |
| pagesize | ajuint | Size of cache pages |
| listLength | ajuint | Number of pages in cache |
| order | ajuint | Order of primary tree |
| level | ajuint | Depth of primary tree |
| cachesize | ajuint | Maximum number of pages to cache |
| nperbucket | ajuint | Number of entries in a primary bucket |
| slevel | ajuint | Depth of secondary tree |
| sorder | ajuint | Order of secondary tree |
| snperbucket | ajuint | Number of entries in a secondary bucket |
| kwlimit | ajuint | Max length of secondary key |
| secondary | AjBool | Secondary index |
| readonly | AjBool | Read only flag |
| deleted | AjBool | Deletion flag |
| compressed | AjBool | Index is compressed |
| Name | Type | Description |
|---|---|---|
| keyword | AjPStr | keyword |
| treeblock | ajulong | disc block of secondary tree |
| id | AjPStr | Id string |
| Name | Type | Description |
|---|---|---|
| NodeType | ajuint | Node type |
| Maxentries | ajuint | Number of entries available |
| Nentries | ajuint | Number of entries |
| Overflow | ajulong | Offset to overflow block |
| keylen | ajuint* | key lengths |
| codes | AjPBtPri* | Primary keywords |
| Name | Type | Description |
|---|---|---|
| NodeType | ajuint | Node type |
| Maxentries | ajuint | Number of entries available |
| Nentries | ajuint | Number of entries |
| Overflow | ajulong | Offset to overflow block |
| keylen | ajuint* | key lengths |
| SecIds | AjPStr* | Ids |
| Name | Type | Description |
|---|---|---|
| keyword | AjPStr | Wildcard keyword |
| pagepos | ajulong | Page number of primary tree leaf |
| list | AjPList | list of AjPBtPris |
| cache | AjPBtcache | cache for secondary tree |
| idlist | AjPList | list of AjPStr IDs |
| secpagepos | ajulong | Page number of secondary tree leaf |
| first | AjBool | true for first search |
| Padding | char[4] | Padding to alignment boundary |
| Name | Type | Description |
|---|---|---|
| key1 | AjPStr | Unique ID |
| dbno | ajuint | Database file number |
| dups | ajuint | Duplicates |
| offset | ajulong | Offset within database file (ftello) |
| refoffset | ajulong | Offset within reference database file (ftello) |
| treeblock | ajulong | Secondary tree root page |