5 #ifndef __DB_IFMAP_UPDATE_H__
6 #define __DB_IFMAP_UPDATE_H__
8 #include <boost/crc.hpp>
9 #include <boost/intrusive/list.hpp>
10 #include <boost/intrusive/slist.hpp>
56 boost::intrusive::list_member_hook<>
node;
62 return std::string(
"To implement");
104 boost::intrusive::slist_member_hook<>
node_;
120 typedef boost::intrusive::member_hook<
123 typedef boost::intrusive::slist<IFMapUpdate, MemberHook>
UpdateList;
144 template <
typename Disposer>
const BitSet & nmask() const
void Remove(IFMapUpdate *update)
IFMapNodeState(IFMapNode *node)
virtual void ClearValid()
bool HasDependency() const
boost::intrusive::list_member_hook node
IFMapState(IFMapNode *node)
virtual bool CanDelete()=0
void AdvertiseOr(const BitSet &set)
void SetAdvertise(const BitSet &set)
const IFMapObjectPtr & data() const
const BitSet & interest() const
void Reset(const BitSet &rhs)
IFMapUpdate(IFMapNode *node, bool positive)
const BitSet & advertise() const
void SetValid(const IFMapLink *link)
void AdvertiseReset(const BitSet &set)
bool HasDependents() const
virtual ~IFMapListEntry()
virtual std::string ToString()
void set(IFMapNode *node)
boost::crc_32_type::value_type crc32type
void SetCrc(crc32type &crc)
static const uint32_t kInvalidSig
void SetDependency(IFMapNodeState *first, IFMapNodeState *second)
const BitSet & advertised() const
void InterestOr(const BitSet &bset)
std::string TypeToString()
void ClearAndDispose(Disposer disposer)
void InterestReset(const BitSet &set)
void SetValid(const IFMapNode *node)
DependencyList< IFMapLink, IFMapNodeState >::const_iterator const_iterator
boost::intrusive::slist_member_hook node_
void Insert(IFMapUpdate *update)
IFMapUpdate * GetUpdate(IFMapListEntry::EntryType type)
const IFMapObjectPtr & data() const
IFMapNode * GetIFMapNode() const
const UpdateList & update_list() const
IFMapListEntry(EntryType type)
void set_sequence(uint64_t seq)
virtual bool IsValid() const
IFMapLinkState(IFMapLink *link)
DependencyRef< IFMapLink, IFMapNodeState > right_
virtual bool IsInvalid() const
virtual std::string ToString()
union IFMapObjectPtr::@5 u
void AdvertisedOr(const BitSet &set)
std::string queue_insert_ago_str()
DependencyList< IFMapLink, IFMapNodeState >::iterator iterator
virtual std::string ToString()
boost::intrusive::member_hook< IFMapUpdate, boost::intrusive::slist_member_hook<>,&IFMapUpdate::node_ > MemberHook
const crc32type & crc() const
const_iterator end() const
void set_queue_insert_at_to_now()
void set(IFMapLink *link)
boost::intrusive::slist< IFMapUpdate, MemberHook > UpdateList
void AdvertisedReset(const BitSet &set)
DEPENDENCY_LIST(IFMapLink, IFMapNodeState, dependents_)
void SetInterest(const BitSet &bset)
const_iterator begin() const
IFMapLink * GetIFMapLink() const
DependencyRef< IFMapLink, IFMapNodeState > left_