| 
 | 
 | ||||||||||||||||
A NotfiyQueue holds a queue of route event notifications waiting transmission to the XORP process that registered interest in route changes that affected one or more routes. When a lot of routes change, we need to queue the changes because we may generate them faster than the recipient can handle being told about them.
| NotifyQueue (const string& module_name) | NotifyQueue | 
NotifyQueue constructor
Parameters:
| module_name | the XRL module target name for the process that this queue holds notifications for. | 
| void  add_entry (NotifyQueueEntry* e) | add_entry | 
Add an notification entry to the queue.
Parameters:
| e | the notification entry to be queued. | 
| void  send_next () | send_next | 
Send the next entry in the queue to this queue's XRL target.
| void  flush (ResponseSender* response_sender) | flush | 
Flush is an indication to the queue that the changes since the last flush can be checked for consolidation. Several add_entry events might occur in rapid succession affecting the same route. A flush indicates that it is OK to start sending this batch of changes (and to consolidate those changes to avoid thrashing, but we don't currently do this).
| void  xrl_done (const XrlError& e) | xrl_done | 
XRL transmit complete callback. We use this to cause the next item in the queue to be sent.
Parameters:
| e | the XRL completion status code. | 
| typedef XorpCallback1<void, const XrlError&>::RefPtr XrlCompleteCB | XrlCompleteCB |