5 #ifndef __ctrlplane__ifmap_update_queue__
6 #define __ctrlplane__ifmap_update_queue__
15 typedef boost::intrusive::member_hook<
17 boost::intrusive::list_member_hook<>,
20 typedef boost::intrusive::list<IFMapListEntry, MemberHook>
List;
109 const BitSet &msplit,
bool before);
void ClearAndDisposeList()
void MoveMarkerBefore(IFMapMarker *marker, IFMapListEntry *current)
boost::intrusive::member_hook< IFMapListEntry, boost::intrusive::list_member_hook<>, &IFMapListEntry::node > MemberHook
IFMapListEntry * Next(IFMapListEntry *current)
void Dequeue(IFMapUpdate *update)
IFMapMarker * MarkerSplitBefore(IFMapMarker *marker, IFMapListEntry *current, const BitSet &msplit)
bool Enqueue(IFMapUpdate *update)
IFMapMarker * MarkerSplit(IFMapMarker *marker, IFMapListEntry *current, const BitSet &msplit, bool before)
void SetSequence(IFMapListEntry *item)
std::map< int, IFMapMarker * > MarkerMap
IFMapListEntry * Previous(IFMapListEntry *current)
boost::intrusive::list< IFMapListEntry, MemberHook > List
void InsertIntoListBefore(IFMapListEntry *ptr, IFMapListEntry *item)
void InsertIntoListAfter(IFMapListEntry *ptr, IFMapListEntry *item)
void MarkerMerge(IFMapMarker *dst, IFMapMarker *src, const BitSet &mmove)
IFMapUpdateQueue(IFMapServer *server)
static const uint64_t NULL_SEQUENCE
IFMapMarker * GetMarker(int bit)
void EraseFromList(IFMapListEntry *item)
void MoveMarkerAfter(IFMapMarker *marker, IFMapListEntry *current)
IFMapMarker * MarkerSplitAfter(IFMapMarker *marker, IFMapListEntry *current, const BitSet &msplit)
IFMapMarker * tail_marker()
void PushbackIntoList(IFMapListEntry *item)
IFMapListEntry * GetLast()
boost::intrusive::list_member_hook node