1#ifndef OSMSCOUT_FEATURE_REF_FEATURE_H
2#define OSMSCOUT_FEATURE_REF_FEATURE_H
45 void SetRef(
const std::string_view& ref)
55 std::string
GetLabel(
const Locale &,
size_t )
const override
60 void Read(FileScanner& scanner)
override;
61 void Write(FileWriter& writer)
override;
74 static const char*
const NAME;
91 const TagRegistry& tagRegistry,
92 const FeatureInstance& feature,
93 const ObjectOSMRef&
object,
95 FeatureValueBuffer& buffer)
const override;
#define OSMSCOUT_API
Definition CoreImportExport.h:45
Definition FeatureReader.h:254
Definition TypeFeature.h:41
Definition FeatureReader.h:143
FeatureValue * AllocateValue(void *buffer) override
void Initialize(TagRegistry &tagRegistry) override
size_t GetValueAlignment() const override
static const char *const NAME
Definition RefFeature.h:74
static const size_t NAME_LABEL_INDEX
Definition RefFeature.h:78
static const char *const NAME_LABEL
Definition RefFeature.h:76
std::string GetName() const override
size_t GetValueSize() const override
void Parse(TagErrorReporter &reporter, const TagRegistry &tagRegistry, const FeatureInstance &feature, const ObjectOSMRef &object, const TagMap &tags, FeatureValueBuffer &buffer) const override
RefFeatureValue & operator=(const FeatureValue &other) override
void Read(FileScanner &scanner) override
RefFeatureValue(const RefFeatureValue &featureValue)=default
std::string GetRef() const
Definition RefFeature.h:50
std::string GetLabel(const Locale &, size_t) const override
Definition RefFeature.h:55
bool operator==(const FeatureValue &other) const override
void SetRef(const std::string_view &ref)
Definition RefFeature.h:45
void Write(FileWriter &writer) override
RefFeatureValue(const std::string &ref)
Definition RefFeature.h:39
RefFeatureValue()=default
Definition TagErrorReporter.h:33
std::unordered_map< TagId, std::string > TagMap
Definition Tag.h:41
FeatureValueReader< RefFeature, RefFeatureValue > RefFeatureValueReader
Definition RefFeature.h:98
FeatureLabelReader< RefFeature, RefFeatureValue > RefFeatureLabelReader
Definition RefFeature.h:99
uint16_t TagId
Definition Tag.h:39