Search for usage in LXR

#include <datatypes.h>

Public Member Functions

 DataSet (const DataSet &)=delete
 DataSet (DataSet &&other) noexcept
void addNode (Node &&node)
void addRelation (Relation &&rel)
void addWay (Way &&way)
Role makeRole (const char *roleName, StringMemory memOpt=StringMemory::Transient)
TagKey makeTagKey (const char *keyName, StringMemory keyMemOpt=StringMemory::Transient)
Id nextInternalId () const
const Nodenode (Id id) const
DataSetoperator= (const DataSet &)=delete
DataSetoperator= (DataSet &&) noexcept
const Relationrelation (Id id) const
Role role (const char *roleName) const
TagKey tagKey (const char *keyName) const
Wayway (Id id)
const Wayway (Id id) const

Public Attributes

std::vector< Nodenodes
std::vector< Relationrelations
std::vector< Wayways

Detailed Description

A set of nodes, ways and relations.

Definition at line 343 of file datatypes.h.

Member Function Documentation

◆ addNode()

void DataSet::addNode ( Node && node)

Definition at line 84 of file datatypes.cpp.

◆ addRelation()

void DataSet::addRelation ( Relation && rel)

Definition at line 104 of file datatypes.cpp.

◆ addWay()

void DataSet::addWay ( Way && way)

Definition at line 94 of file datatypes.cpp.

◆ makeRole()

Role DataSet::makeRole ( const char * roleName,
OSM::StringMemory memOpt = StringMemory::Transient )

Creates a role name key.

See also

Definition at line 33 of file datatypes.cpp.

◆ makeTagKey()

TagKey DataSet::makeTagKey ( const char * keyName,
OSM::StringMemory keyMemOpt = StringMemory::Transient )

Create a tag key for the given tag name.

If none exist yet a new one is created. Use this for creating tags, not for lookup, prefer tagKey() for that.

keyMemOptspecifies whether keyName is persisent for the lifetime of this instance and thus can be used without requiring a copy. If the memory is transient the string is copied if needed, and released in the DataSet destructor.

Definition at line 28 of file datatypes.cpp.

◆ nextInternalId()

OSM::Id DataSet::nextInternalId ( ) const

Create a unique id for internal use (ie.

one that will not clash with official OSM ids).

Definition at line 114 of file datatypes.cpp.

◆ node()

const Node * DataSet::node ( Id id) const

Find a node by its id.

nullptr if the node doesn't exist.

Definition at line 48 of file datatypes.cpp.

◆ relation()

const Relation * DataSet::relation ( Id id) const

Find a relation by its id.

nullptr if the relation doesn't exist.

Definition at line 75 of file datatypes.cpp.

◆ role()

Role DataSet::role ( const char * roleName) const

Looks up a role name key.

See also

Definition at line 43 of file datatypes.cpp.

◆ tagKey()

TagKey DataSet::tagKey ( const char * keyName) const

Look up a tag key for the given tag name, if it exists.

If no key exists, an empty/invalid/null key is returned. Use this for tag lookup, not for creating/adding tags.

Definition at line 38 of file datatypes.cpp.

◆ way() [1/2]

Way * DataSet::way ( Id id)

Definition at line 66 of file datatypes.cpp.

◆ way() [2/2]

const Way * DataSet::way ( Id id) const

Find a way by its id.

nullptr if the way doesn't exist.

Definition at line 57 of file datatypes.cpp.

Member Data Documentation

◆ nodes

std::vector<Node> OSM::DataSet::nodes

Definition at line 399 of file datatypes.h.

◆ relations

std::vector<Relation> OSM::DataSet::relations

Definition at line 401 of file datatypes.h.

◆ ways

std::vector<Way> OSM::DataSet::ways

Definition at line 400 of file datatypes.h.

The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Fri Jun 14 2024 11:56:17 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.