38 #include <boost/function.hpp>
39 #include <boost/iterator/iterator_facade.hpp>
62 boost::forward_traversal_tag>
65 iterator(iterator
const& i);
66 iterator &operator=(iterator
const& i);
71 iterator(View* view,
bool end =
false);
75 friend class boost::iterator_core_access;
78 void populateSeek(std::multiset<IndexEntry>::const_iterator iter);
88 std::vector<ViewIterHelper> iters_;
89 uint32_t view_revision_;
93 typedef iterator const_iterator;
103 View(
bool const& reduce_overlap =
false);
122 View(Bag
const& bag, boost::function<
bool(ConnectionInfo
const*)> query,
146 void addQuery(
Bag const& bag, boost::function<
bool(
ConnectionInfo const*)> query,
149 std::vector<const ConnectionInfo*> getConnections();
167 std::vector<MessageRange*> ranges_;
168 std::vector<BagQuery*> queries_;
169 uint32_t view_revision_;
171 uint32_t size_cache_;
172 uint32_t size_revision_;
174 bool reduce_overlap_;