1 #ifndef OSMIUM_OSM_AREA_HPP 2 #define OSMIUM_OSM_AREA_HPP 53 template <
typename TDerived,
typename T>
54 class OSMObjectBuilder;
101 return id < 0 ? -area_id : area_id;
119 template <
typename TDerived,
typename T>
137 return (positive_id() & 0x1) == 0;
157 std::pair<size_t, size_t> counter { 0, 0 };
159 for (
auto it = cbegin(); it != cend(); ++it) {
160 switch (it->type()) {
180 assert(
false &&
"Children of Area can only be outer/inner_ring and tag_list.");
193 return num_rings().first > 1;
228 return subitems<const osmium::OuterRing>();
247 #endif // OSMIUM_OSM_AREA_HPP osmium::object_id_type orig_id() const noexcept
Definition: area.hpp:145
Definition: osm_object_builder.hpp:376
#define OSMIUM_DEPRECATED
Definition: compatibility.hpp:50
bool from_way() const noexcept
Definition: area.hpp:136
type
Definition: entity_bits.hpp:63
Definition: item_iterator.hpp:248
std::pair< size_t, size_t > num_rings() const
Definition: area.hpp:156
Definition: item_iterator.hpp:132
item_type
Definition: item_type.hpp:43
bool is_multipolygon() const
Definition: area.hpp:192
OSMIUM_DEPRECATED osmium::memory::ItemIterator< const osmium::InnerRing > inner_ring_cend(const osmium::memory::ItemIterator< const osmium::OuterRing > &it) const
Definition: area.hpp:218
osmium::object_id_type object_id_to_area_id(osmium::object_id_type id, osmium::item_type type) noexcept
Definition: area.hpp:96
OSMIUM_DEPRECATED osmium::memory::ItemIterator< const osmium::InnerRing > inner_ring_cbegin(const osmium::memory::ItemIterator< const osmium::OuterRing > &it) const
Definition: area.hpp:205
Namespace for everything in the Osmium library.
Definition: assembler.hpp:73
osmium::memory::ItemIteratorRange< const osmium::InnerRing > inner_rings(const osmium::OuterRing &outer) const
Definition: area.hpp:237
osmium::object_id_type area_id_to_object_id(osmium::object_id_type id) noexcept
Definition: area.hpp:110
int64_t object_id_type
Type for OSM object (node, way, or relation) IDs.
Definition: types.hpp:45
OuterRing()
Definition: area.hpp:66
Area()
Definition: area.hpp:122
osmium::memory::ItemIteratorRange< const osmium::OuterRing > outer_rings() const
Definition: area.hpp:227
const_iterator cbegin() const noexcept
Definition: item_iterator.hpp:276
Definition: node_ref_list.hpp:51
data_type data() noexcept
Definition: item_iterator.hpp:208
ItemIterator< T > cast() const noexcept
Definition: item_iterator.hpp:170
InnerRing()
Definition: area.hpp:82
Definition: object.hpp:63