#pragma once #include #include namespace osmp { class Object; class Node; class Way { public: Way(const tinyxml2::XMLElement* way_elem, Object* parent); const std::vector& GetTags() const; size_t GetTagsSize() const; const Tag& GetTag(size_t index) const; const std::vector& GetNodes() const; size_t GetNodesSize() const; const Node& GetNode(size_t index) const; public: unsigned int id; std::string user; unsigned int uid; bool visible; std::string version; unsigned int changeset; std::string timestamp; private: Object* parent; std::vector nodes; std::vector tags; }; }