9 #ifndef FORWARDER_NAME_SPLAY_H 10 #define FORWARDER_NAME_SPLAY_H 12 #include "../ndn-constants.h" 43 #define NDN_NAMETREE_RESERVE_SIZE(entry_count) \ 44 (sizeof(nametree_entry_t) * (entry_count) + sizeof(ndn_nametree_t)) nametree_entry_t * root
Definition: name-splay.h:39
void ndn_nametree_init(void *memory, ndn_table_id_t capacity)
Definition: name-splay.c:30
Definition: name-splay.h:24
ndn_table_id_t fib_id
Corresponding FIB entry's id.
Definition: name-splay.h:35
NDN_NAMETREE_ENTRY_TYPE
Definition: name-splay.h:22
nametree_entry_t pool[]
Definition: name-splay.h:40
nametree_entry_t * ndn_nametree_prefix_match(ndn_nametree_t *self, uint8_t name[], size_t len, enum NDN_NAMETREE_ENTRY_TYPE entry_type)
Definition: name-splay.c:206
ndn_table_id_t pit_id
Child or parent.
Definition: name-splay.h:34
struct ndn_nametree ndn_nametree_t
nametree_entry_t * nil
Definition: name-splay.h:39
#define NDN_NAME_COMPONENT_BLOCK_SIZE
Definition: ndn-constants.h:16
nametree_entry_t * ndn_nametree_find_or_insert(ndn_nametree_t *self, uint8_t name[], size_t len)
Definition: name-splay.c:160
struct nametree_entry nametree_entry_t
ndn_table_id_t ndn_nametree_getid(ndn_nametree_t *self, nametree_entry_t *entry)
Definition: name-splay.c:256
Definition: name-splay.h:38
Definition: name-splay.h:23
struct nametree_entry * sub
Definition: name-splay.h:32
uint16_t ndn_table_id_t
Definition: ndn-constants.h:39
uint8_t val[NDN_NAME_COMPONENT_BLOCK_SIZE]
Name component of this node.
Definition: name-splay.h:31
Definition: name-splay.h:26
NameTree node.
Definition: name-splay.h:30
nametree_entry_t * ndn_nametree_at(ndn_nametree_t *self, ndn_table_id_t id)
Definition: name-splay.c:251
nametree_entry_t * ndn_nametree_find(ndn_nametree_t *self, uint8_t name[], size_t len)
Definition: name-splay.c:182
struct nametree_entry * cop[2]
Subtree.
Definition: name-splay.h:33