class BgpTrie

The BgpTrie is an augmented, specialized trie that allows us to lookup by network address or by path attribute list. More...

 
LOGO
 Annotated List  Files  Globals  Hierarchy  Index  Top

Public Types

Public Methods


Detailed Description

The BgpTrie is an augmented, specialized trie that allows us to lookup by network address or by path attribute list. We need this because we can't efficiently extract entries with the same path attribute list from a regular trie. Each set of nodes with the same path attribute pointer are linked together into a chain (a circular doubly-linked list). The BgpTrie holds a pointer to any one of those nodes.

typedef IPNet<A> IPNet

IPNet

typedef ChainedSubnetRoute<A> ChainedSubnetRoute

ChainedSubnetRoute

typedef map<const PathAttributeList<A> *, const ChainedSubnetRoute*, Path_Att_Ptr_Cmp<A> > PathmapType

PathmapType

typedef RefTrie<A, const ChainedSubnetRoute> RouteTrie

RouteTrie

typedef RouteTrie::iterator iterator

iterator

 BgpTrie ()

BgpTrie

 ~BgpTrie ()

~BgpTrie

iterator  insert (const IPNet& net, const SubnetRoute<A>& route)

insert

Reimplemented from RefTrie.

void  erase (const IPNet& net)

erase

Reimplemented from RefTrie.

void  delete_all_nodes ()

delete_all_nodes

Reimplemented from RefTrie.

const PathmapType&  pathmap ()

pathmap

[const]


Generated by: pavlin on possum.icir.org on Wed Apr 13 21:53:16 2005, using kdoc $.