|
OpenSDN source code
|
#include <ifmap_update_queue.h>

Public Types | |
| typedef boost::intrusive::member_hook< IFMapListEntry, boost::intrusive::list_member_hook<>, &IFMapListEntry::node > | MemberHook |
| typedef boost::intrusive::list< IFMapListEntry, MemberHook > | List |
| typedef std::map< int, IFMapMarker * > | MarkerMap |
Public Member Functions | |
| IFMapUpdateQueue (IFMapServer *server) | |
| ~IFMapUpdateQueue () | |
| bool | Enqueue (IFMapUpdate *update) |
| void | Dequeue (IFMapUpdate *update) |
| IFMapListEntry * | Next (IFMapListEntry *current) |
| IFMapListEntry * | Previous (IFMapListEntry *current) |
| IFMapListEntry * | GetLast () |
| void | MoveMarkerBefore (IFMapMarker *marker, IFMapListEntry *current) |
| void | MoveMarkerAfter (IFMapMarker *marker, IFMapListEntry *current) |
| IFMapMarker * | MarkerSplitBefore (IFMapMarker *marker, IFMapListEntry *current, const BitSet &msplit) |
| IFMapMarker * | MarkerSplitAfter (IFMapMarker *marker, IFMapListEntry *current, const BitSet &msplit) |
| void | MarkerMerge (IFMapMarker *dst, IFMapMarker *src, const BitSet &mmove) |
| void | Join (int bit) |
| void | Leave (int bit) |
| IFMapMarker * | GetMarker (int bit) |
| bool | empty () const |
| IFMapMarker * | tail_marker () |
| int | size () const |
| void | PrintQueue () |
Private Member Functions | |
| void | SetSequence (IFMapListEntry *item) |
| void | PushbackIntoList (IFMapListEntry *item) |
| void | InsertIntoListBefore (IFMapListEntry *ptr, IFMapListEntry *item) |
| void | InsertIntoListAfter (IFMapListEntry *ptr, IFMapListEntry *item) |
| void | EraseFromList (IFMapListEntry *item) |
| void | ClearAndDisposeList () |
| IFMapMarker * | MarkerSplit (IFMapMarker *marker, IFMapListEntry *current, const BitSet &msplit, bool before) |
Private Attributes | |
| List | list_ |
| MarkerMap | marker_map_ |
| IFMapMarker | tail_marker_ |
| IFMapServer * | server_ |
| uint64_t | sequence_ |
Static Private Attributes | |
| static const uint64_t | NULL_SEQUENCE = 0 |
Friends | |
| class | ShowIFMapUpdateQueue |
Definition at line 13 of file ifmap_update_queue.h.
| typedef boost::intrusive::list<IFMapListEntry, MemberHook> IFMapUpdateQueue::List |
Definition at line 20 of file ifmap_update_queue.h.
| typedef std::map<int, IFMapMarker *> IFMapUpdateQueue::MarkerMap |
Definition at line 22 of file ifmap_update_queue.h.
| typedef boost::intrusive::member_hook< IFMapListEntry, boost::intrusive::list_member_hook<>, &IFMapListEntry::node > IFMapUpdateQueue::MemberHook |
Definition at line 19 of file ifmap_update_queue.h.
|
explicit |
| IFMapUpdateQueue::~IFMapUpdateQueue | ( | ) |
|
private |
Definition at line 66 of file ifmap_update_queue.cc.
| void IFMapUpdateQueue::Dequeue | ( | IFMapUpdate * | update | ) |
| bool IFMapUpdateQueue::empty | ( | ) | const |
Definition at line 246 of file ifmap_update_queue.cc.
| bool IFMapUpdateQueue::Enqueue | ( | IFMapUpdate * | update | ) |
|
private |
| IFMapListEntry * IFMapUpdateQueue::GetLast | ( | ) |
Definition at line 230 of file ifmap_update_queue.cc.
| IFMapMarker * IFMapUpdateQueue::GetMarker | ( | int | bit | ) |
Definition at line 89 of file ifmap_update_queue.cc.
|
private |
|
private |
| void IFMapUpdateQueue::Join | ( | int | bit | ) |
| void IFMapUpdateQueue::Leave | ( | int | bit | ) |
| void IFMapUpdateQueue::MarkerMerge | ( | IFMapMarker * | dst, |
| IFMapMarker * | src, | ||
| const BitSet & | mmove | ||
| ) |
|
private |
| IFMapMarker * IFMapUpdateQueue::MarkerSplitAfter | ( | IFMapMarker * | marker, |
| IFMapListEntry * | current, | ||
| const BitSet & | msplit | ||
| ) |
| IFMapMarker * IFMapUpdateQueue::MarkerSplitBefore | ( | IFMapMarker * | marker, |
| IFMapListEntry * | current, | ||
| const BitSet & | msplit | ||
| ) |
| void IFMapUpdateQueue::MoveMarkerAfter | ( | IFMapMarker * | marker, |
| IFMapListEntry * | current | ||
| ) |
| void IFMapUpdateQueue::MoveMarkerBefore | ( | IFMapMarker * | marker, |
| IFMapListEntry * | current | ||
| ) |
| IFMapListEntry * IFMapUpdateQueue::Next | ( | IFMapListEntry * | current | ) |
Definition at line 238 of file ifmap_update_queue.cc.
| IFMapListEntry * IFMapUpdateQueue::Previous | ( | IFMapListEntry * | current | ) |
Definition at line 221 of file ifmap_update_queue.cc.
| void IFMapUpdateQueue::PrintQueue | ( | ) |
|
private |
|
private |
| int IFMapUpdateQueue::size | ( | ) | const |
Definition at line 251 of file ifmap_update_queue.cc.
|
inline |
Definition at line 87 of file ifmap_update_queue.h.
|
friend |
Definition at line 94 of file ifmap_update_queue.h.
|
private |
Definition at line 96 of file ifmap_update_queue.h.
|
private |
Definition at line 97 of file ifmap_update_queue.h.
|
staticprivate |
Definition at line 95 of file ifmap_update_queue.h.
|
private |
Definition at line 100 of file ifmap_update_queue.h.
|
private |
Definition at line 99 of file ifmap_update_queue.h.
|
private |
Definition at line 98 of file ifmap_update_queue.h.