78 const Point3d&
get()
const
80 return m_queue.top().second;
84 void add(
const Point3d& ,
float priority);
88 return m_queue.empty();
93 return m_queue.size();
97 struct VoxelOrdering {
98 bool operator() (
const std::pair<float, Point3d>& left,
99 const std::pair<float, Point3d>& right)
const
101 return left.first > right.first;
105 typedef boost::heap::priority_queue<std::pair<float, Point3d>,
106 boost::heap::compare<VoxelOrdering> >
110 carto::VolumeRef<int16_t> m_domain;
111 const int16_t m_front_label;
112 const int16_t m_done_label;