map.hpp File Reference
`#include <algorithm>`
`#include <cstddef>`
`#include <functional>`
`#include <map>`
`#include <memory>`
`#include <stdexcept>`
`#include <string>`
`#include <type_traits>`
`#include <vector>`
`#include <osmium/util/compatibility.hpp>`
`#include <osmium/util/string.hpp>`
Include dependency graph for map.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Classes

class | osmium::index::map::Map< TId, TValue >
class | osmium::index::MapFactory< TId, TValue >
struct | osmium::index::map::create_map< TId, TValue, TMap >

## Namespaces

| osmium
| Namespace for everything in the Osmium library.
| osmium::index
| Indexing of OSM data, Locations, etc.
| osmium::index::map
| Key-value containers with unique integer values for a key.

## Macros

#define | OSMIUM_CONCATENATE_DETAIL_(x, y) x##y
#define | OSMIUM_CONCATENATE_(x, y) OSMIUM_CONCATENATE_DETAIL_(x, y)
#define | REGISTER_MAP(id, value, klass, name)

## Functions

template<typename TId , typename TValue , template< typename, typename > class TMap>
bool | osmium::index::register_map (const std::string &name)

## Macro Definition Documentation

#define OSMIUM_CONCATENATE_ | ( |  | x,
|  |  | y
| ) |  | OSMIUM_CONCATENATE_DETAIL_(x, y)

#define OSMIUM_CONCATENATE_DETAIL_ | ( |  | x,
|  |  | y
| ) |  | x##y

#define REGISTER_MAP | ( |  | id,
|  |  | value,
|  |  | klass,
|  |  | name
| ) |  |

Value:
namespace osmium { namespace index { namespace detail { \
const bool OSMIUM_CONCATENATE_(registered_, name) = osmium::index::register_map<id, value, klass>(#name); \
inline bool OSMIUM_CONCATENATE_(get_registered_, name)() noexcept { \
return OSMIUM_CONCATENATE_(registered_, name); \
} \
} } }
osmium
Namespace for everything in the Osmium library.
Definition: assembler.hpp:59
detail
Definition: attr.hpp:298
OSMIUM_CONCATENATE_
#define OSMIUM_CONCATENATE_(x, y)
Definition: map.hpp:260