Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008 #ifndef RELATION_PIMPL_HXX
00009 #define RELATION_PIMPL_HXX
00010
00011 #include "relation-pskel.hxx"
00012 #include "../elements/osmelements.h"
00013 #include <map>
00014
00015 class relation_pimpl: public virtual relation_pskel
00016 {
00017 public:
00018 virtual void
00019 pre ();
00020
00021 virtual void
00022 tag (const std::pair<std::string, std::string>&);
00023
00024 virtual void
00025 member (const std::pair<std::string, std::shared_ptr<osm::Element> >&);
00026
00027 virtual void
00028 id (long long);
00029
00030 virtual osm::Relation
00031 post_relation ();
00032 private:
00033 std::set<osm::Tag> tags;
00034 std::multimap<std::string, std::shared_ptr<osm::Element> > members;
00035 int64_t _id;
00036 };
00037
00038 #endif // RELATION_PIMPL_HXX