1 #ifndef OSMIUM_OBJECT_POINTER_COLLECTION_HPP 2 #define OSMIUM_OBJECT_POINTER_COLLECTION_HPP 40 #include <boost/iterator/indirect_iterator.hpp> 75 using const_iterator = boost::indirect_iterator<std::vector<osmium::OSMObject*>::const_iterator,
const osmium::OSMObject>;
89 template <
typename TCompare>
90 void sort(TCompare&& compare) {
99 template <
typename TEqual>
101 const auto last = std::unique(
m_objects.begin(),
m_objects.end(), std::forward<TEqual>(equal));
148 #endif // OSMIUM_OBJECT_POINTER_COLLECTION_HPP boost::indirect_iterator< std::vector< osmium::OSMObject * >::const_iterator, const osmium::OSMObject > const_iterator
Definition: object_pointer_collection.hpp:75
boost::indirect_iterator< std::vector< osmium::OSMObject * >::iterator, osmium::OSMObject > iterator
Definition: object_pointer_collection.hpp:74
iterator begin()
Definition: object_pointer_collection.hpp:128
Definition: handler.hpp:71
void clear()
Clear the collection,.
Definition: object_pointer_collection.hpp:124
Definition: object_pointer_collection.hpp:68
Namespace for everything in the Osmium library.
Definition: assembler.hpp:63
void sort(TCompare &&compare)
Definition: object_pointer_collection.hpp:90
void osm_object(osmium::OSMObject &object)
Definition: object_pointer_collection.hpp:82
const_iterator cend() const
Definition: object_pointer_collection.hpp:140
ObjectPointerCollection()=default
std::vector< osmium::OSMObject * > m_objects
Definition: object_pointer_collection.hpp:70
bool empty() const noexcept
Definition: object_pointer_collection.hpp:110
iterator end()
Definition: object_pointer_collection.hpp:132
const_iterator cbegin() const
Definition: object_pointer_collection.hpp:136
size_t size() const noexcept
Definition: object_pointer_collection.hpp:119
void unique(TEqual &&equal)
Definition: object_pointer_collection.hpp:100
Definition: object.hpp:64