FanoutTable< A > Class Template Reference

Inheritance diagram for FanoutTable< A >:
BGPRouteTable< A > CrashDumper

List of all members.

Public Member Functions

 FanoutTable (string tablename, Safi safi, BGPRouteTable< A > *parent, PeerHandler *aggr_handler, BGPRouteTable< A > *aggr_table)
int add_next_table (BGPRouteTable< A > *next_table, const PeerHandler *ph, uint32_t genid)
int remove_next_table (BGPRouteTable< A > *next_table)
int replace_next_table (BGPRouteTable< A > *old_next_table, BGPRouteTable< A > *new_next_table)
int add_route (InternalMessage< A > &rtmsg, BGPRouteTable< A > *caller)
int replace_route (InternalMessage< A > &old_rtmsg, InternalMessage< A > &new_rtmsg, BGPRouteTable< A > *caller)
int delete_route (InternalMessage< A > &rtmsg, BGPRouteTable< A > *caller)
int route_dump (InternalMessage< A > &rtmsg, BGPRouteTable< A > *caller, const PeerHandler *dump_peer)
int push (BGPRouteTable< A > *caller)
const SubnetRoute< A > * lookup_route (const IPNet< A > &net, uint32_t &genid, FPAListRef &pa_list) const
RouteTableType type () const
string str () const
void peer_table_info (list< const PeerTableInfo< A > * > &peer_list)
int dump_entire_table (BGPRouteTable< A > *child_to_dump_to, Safi safi, string ribname)
bool get_next_message (BGPRouteTable< A > *next_table)
void peering_went_down (const PeerHandler *peer, uint32_t genid, BGPRouteTable< A > *caller)
void peering_down_complete (const PeerHandler *peer, uint32_t genid, BGPRouteTable< A > *caller)
void peering_came_up (const PeerHandler *peer, uint32_t genid, BGPRouteTable< A > *caller)
void crash_dump () const
string dump_state () const
void print_queue ()

Private Member Functions

void add_to_queue (RouteQueueOp operation, InternalMessage< A > &rtmsg, const list< PeerTableInfo< A > * > &queued_peers)
void add_replace_to_queue (InternalMessage< A > &old_rtmsg, InternalMessage< A > &new_rtmsg, const list< PeerTableInfo< A > * > &queued_peers)
void add_push_to_queue (const list< PeerTableInfo< A > * > &queued_peers, const PeerHandler *origin_peer)
void set_queue_positions (const list< PeerTableInfo< A > * > &queued_peers)
void skip_entire_queue (BGPRouteTable< A > *next_table)
void wakeup_downstream (list< PeerTableInfo< A > * > &queued_peers)
void add_dump_table (DumpTable< A > *dump_table)
void remove_dump_table (DumpTable< A > *dump_table)

Private Attributes

NextTableMap< A > _next_tables
list< const RouteQueueEntry< A > * > _output_queue
set< DumpTable< A > * > _dump_tables
PeerTableInfo< A > * _aggr_peerinfo

template<class A>
class FanoutTable< A >

The documentation for this class was generated from the following files:
 All Classes Namespaces Functions Variables Typedefs Enumerations