Libosmium
2.16.0
Fast and flexible C++ library for working with OpenStreetMap data
|
Go to the documentation of this file. 1 #ifndef OSMIUM_OSM_ENTITY_BITS_HPP
2 #define OSMIUM_OSM_ENTITY_BITS_HPP
39 #include <type_traits>
46 namespace osm_entity_bits {
63 enum type :
unsigned char {
81 return static_cast<type>(
static_cast<unsigned char>(lhs) |
static_cast<unsigned char>(rhs));
85 return static_cast<type>(
static_cast<unsigned char>(lhs) &
static_cast<unsigned char>(rhs));
89 return all &
static_cast<type>(~static_cast<unsigned char>(value));
121 #endif // OSMIUM_OSM_ENTITY_BITS_HPP
@ nothing
Definition: entity_bits.hpp:67
@ node
Definition: entity_bits.hpp:68
constexpr type operator&(const type lhs, const type rhs) noexcept
Definition: entity_bits.hpp:84
constexpr type operator|(const type lhs, const type rhs) noexcept
Definition: entity_bits.hpp:80
@ nwra
node, way, relation, or area object
Definition: entity_bits.hpp:73
Namespace for everything in the Osmium library.
Definition: assembler.hpp:53
type from_item_type(osmium::item_type item_type) noexcept
Definition: entity_bits.hpp:108
@ area
Definition: entity_bits.hpp:72
@ relation
Definition: entity_bits.hpp:70
@ all
object or changeset
Definition: entity_bits.hpp:76
type operator&=(type &lhs, const type rhs) noexcept
Definition: entity_bits.hpp:97
constexpr type operator~(const type value) noexcept
Definition: entity_bits.hpp:88
@ nwr
node, way, or relation object
Definition: entity_bits.hpp:71
@ way
Definition: entity_bits.hpp:69
@ changeset
Definition: entity_bits.hpp:75
type
Definition: entity_bits.hpp:63
item_type
Definition: item_type.hpp:43
type & operator|=(type &lhs, const type rhs) noexcept
Definition: entity_bits.hpp:92