osmium::handler::NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs > Class Template Reference

`#include <node_locations_for_ways.hpp>`

Inheritance diagram for osmium::handler::NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs >:
[legend]
Collaboration diagram for osmium::handler::NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs >:
[legend]

## Public Types

typedef TStoragePosIDs | index_pos_type
typedef TStorageNegIDs | index_neg_type

## Public Member Functions

| NodeLocationsForWays (TStoragePosIDs &storage_pos, TStorageNegIDs &storage_neg=get_dummy())
| NodeLocationsForWays (const NodeLocationsForWays &)=delete
NodeLocationsForWays & | operator= (const NodeLocationsForWays &)=delete
| NodeLocationsForWays (NodeLocationsForWays &&)=default
NodeLocationsForWays & | operator= (NodeLocationsForWays &&)=default
| ~NodeLocationsForWays () noexcept=default
void | ignore_errors ()
void | node (const osmium::Node &node)
osmium::Location | get_node_location (const osmium::object_id_type id) const
void | way (osmium::Way &way)
void | clear ()
Public Member Functions inherited from osmium::handler::Handler
void | osm_object (const osmium::OSMObject &) const
void | node (const osmium::Node &) const
void | way (const osmium::Way &) const
void | relation (const osmium::Relation &) const
void | area (const osmium::Area &) const
void | changeset (const osmium::Changeset &) const
void | tag_list (const osmium::TagList &) const
void | way_node_list (const osmium::WayNodeList &) const
void | relation_member_list (const osmium::RelationMemberList &) const
void | outer_ring (const osmium::OuterRing &) const
void | inner_ring (const osmium::InnerRing &) const
void | changeset_discussion (const osmium::ChangesetDiscussion &) const
void | flush () const

## Static Private Member Functions

static dummy_type & | get_dummy ()

## Private Attributes

TStoragePosIDs & | m_storage_pos
| Object that handles the actual storage of the node locations (with positive IDs). More...
TStorageNegIDs & | m_storage_neg
| Object that handles the actual storage of the node locations (with negative IDs). More...
bool | m_ignore_errors {false}
bool | m_must_sort {false}

## Detailed Description

### template<typename TStoragePosIDs, typename TStorageNegIDs = dummy_type>
class osmium::handler::NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs >

Handler to retrieve locations from nodes and add them to ways.

Template Parameters

  TStoragePosIDs | Class that handles the actual storage of the node locations (for positive IDs). It must support the set(id, value) and get(id) methods.
  TStorageNegIDs | Same but for negative IDs.

## Member Typedef Documentation

template<typename TStoragePosIDs , typename TStorageNegIDs = dummy_type>

typedef TStorageNegIDs osmium::handler::NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs >::index_neg_type

template<typename TStoragePosIDs , typename TStorageNegIDs = dummy_type>

typedef TStoragePosIDs osmium::handler::NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs >::index_pos_type

## Constructor & Destructor Documentation

template<typename TStoragePosIDs , typename TStorageNegIDs = dummy_type>

osmium::handler::NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs >::NodeLocationsForWays | ( | TStoragePosIDs & | storage_pos,
|  | TStorageNegIDs & | storage_neg = `get_dummy()`
| ) |  |

inline explicit

template<typename TStoragePosIDs , typename TStorageNegIDs = dummy_type>

osmium::handler::NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs >::NodeLocationsForWays | ( | const NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs > & |  | ) |

delete

template<typename TStoragePosIDs , typename TStorageNegIDs = dummy_type>

osmium::handler::NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs >::NodeLocationsForWays | ( | NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs > && |  | ) |

default

template<typename TStoragePosIDs , typename TStorageNegIDs = dummy_type>

osmium::handler::NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs >::~NodeLocationsForWays | ( |  | ) |

default noexcept

## Member Function Documentation

template<typename TStoragePosIDs , typename TStorageNegIDs = dummy_type>

void osmium::handler::NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs >::clear | ( |  | ) |

inline

Call clear on the location indexes. Makes the NodeLocationsForWays handler unusable. Used to explicitly free memory if thats needed.

template<typename TStoragePosIDs , typename TStorageNegIDs = dummy_type>

static dummy_type& osmium::handler::NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs >::get_dummy | ( |  | ) |

inline static private

template<typename TStoragePosIDs , typename TStorageNegIDs = dummy_type>

osmium::Location osmium::handler::NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs >::get_node_location | ( | const osmium::object_id_type | id | ) | const

inline

Get location of node with given id.

template<typename TStoragePosIDs , typename TStorageNegIDs = dummy_type>

void osmium::handler::NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs >::ignore_errors | ( |  | ) |

inline

template<typename TStoragePosIDs , typename TStorageNegIDs = dummy_type>

void osmium::handler::NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs >::node | ( | const osmium::Node & | node | ) |

inline

Store the location of the node in the storage.

template<typename TStoragePosIDs , typename TStorageNegIDs = dummy_type>

NodeLocationsForWays& osmium::handler::NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs >::operator= | ( | const NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs > & |  | ) |

delete

template<typename TStoragePosIDs , typename TStorageNegIDs = dummy_type>

NodeLocationsForWays& osmium::handler::NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs >::operator= | ( | NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs > && |  | ) |

default

template<typename TStoragePosIDs , typename TStorageNegIDs = dummy_type>

void osmium::handler::NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs >::way | ( | osmium::Way & | way | ) |

inline

Retrieve locations of all nodes in the way from storage and add them to the way object.

## Member Data Documentation

template<typename TStoragePosIDs , typename TStorageNegIDs = dummy_type>

bool osmium::handler::NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs >::m_ignore_errors {false}

private

template<typename TStoragePosIDs , typename TStorageNegIDs = dummy_type>

bool osmium::handler::NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs >::m_must_sort {false}

private

template<typename TStoragePosIDs , typename TStorageNegIDs = dummy_type>

TStorageNegIDs& osmium::handler::NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs >::m_storage_neg

private

Object that handles the actual storage of the node locations (with negative IDs).

template<typename TStoragePosIDs , typename TStorageNegIDs = dummy_type>

TStoragePosIDs& osmium::handler::NodeLocationsForWays< TStoragePosIDs, TStorageNegIDs >::m_storage_pos

private

Object that handles the actual storage of the node locations (with positive IDs).

The documentation for this class was generated from the following file:

- osmium/handler/node_locations_for_ways.hpp