#include <linked.h>
Public Member Functions | |
void | delist (unsigned path) |
De-list from a single map path. | |
void | enlist (unsigned path, MultiMap **index, caddr_t key, unsigned size, size_t keysize=0) |
Enlist binary key on a single map path. | |
void | enlist (unsigned path, MultiMap **root) |
Enlist on a single linked list. | |
MultiMap * | next (unsigned path) const |
Get next node from single chain. | |
Static Public Member Functions | |
static MultiMap * | find (unsigned path, MultiMap **index, caddr_t key, unsigned max, size_t size=0) |
Find a multikey node. | |
static unsigned | keyindex (caddr_t key, unsigned max, size_t size=0) |
Compute binary key index. | |
Protected Member Functions | |
virtual bool | equal (unsigned path, caddr_t key, size_t size) const |
Modifiable interface for key matching. | |
MultiMap (unsigned count) | |
Initialize a multilist object. | |
virtual | ~MultiMap () |
Destroy a multilist object. |
Definition at line 958 of file linked.h.
ucc::MultiMap::MultiMap | ( | unsigned | count | ) | [protected] |
Initialize a multilist object.
count | of link paths. |
void ucc::MultiMap::delist | ( | unsigned | path | ) |
De-list from a single map path.
path | to detach from. |
void ucc::MultiMap::enlist | ( | unsigned | path, | |
MultiMap ** | index, | |||
caddr_t | key, | |||
unsigned | size, | |||
size_t | keysize = 0 | |||
) |
Enlist binary key on a single map path.
path | to attach through. | |
index | to attach to. | |
key | value to use. | |
size | of index. | |
keysize | of key or 0 if NULL terminated string. |
void ucc::MultiMap::enlist | ( | unsigned | path, | |
MultiMap ** | root | |||
) |
Enlist on a single linked list.
path | to attach through. | |
root | of list to attach. |
virtual bool ucc::MultiMap::equal | ( | unsigned | path, | |
caddr_t | key, | |||
size_t | size | |||
) | const [protected, virtual] |
Modifiable interface for key matching.
path | to check. | |
key | to check. | |
size | of key to check or 0 if NULL terminated string. |
static MultiMap* ucc::MultiMap::find | ( | unsigned | path, | |
MultiMap ** | index, | |||
caddr_t | key, | |||
unsigned | max, | |||
size_t | size = 0 | |||
) | [static] |
Find a multikey node.
path | of table. | |
index | of hash table. | |
key | to locate. | |
max | size of index. | |
size | of key or 0 if NULL terminated string. |
static unsigned ucc::MultiMap::keyindex | ( | caddr_t | key, | |
unsigned | max, | |||
size_t | size = 0 | |||
) | [static] |
Compute binary key index.
key | memory to compute. | |
max | size of index. | |
size | of key or 0 if NULL terminated string. |
MultiMap* ucc::MultiMap::next | ( | unsigned | path | ) | const |
Get next node from single chain.
path | to follow. |