From 76213281ecde0f65c1d7cb02d9351ecafd86a7fb Mon Sep 17 00:00:00 2001 From: map-per Date: Tue, 9 Dec 2025 18:13:23 +0100 Subject: [PATCH] read file Signed-off-by: map-per --- libs/editor/feature_type_to_osm.cpp | 40 +++++++++++++++++++++++++++++ libs/editor/xml_feature.cpp | 2 +- 2 files changed, 41 insertions(+), 1 deletion(-) diff --git a/libs/editor/feature_type_to_osm.cpp b/libs/editor/feature_type_to_osm.cpp index c1d8c2640..304ad6055 100644 --- a/libs/editor/feature_type_to_osm.cpp +++ b/libs/editor/feature_type_to_osm.cpp @@ -1,9 +1,11 @@ #include "editor/feature_type_to_osm.hpp" #include "base/logging.hpp" +#include "coding/reader_streambuf.hpp" #include "indexer/classificator.hpp" #include "platform/platform.hpp" + namespace editor { void FeatureTypeToOSM::loadConfigFile() { @@ -14,6 +16,44 @@ void FeatureTypeToOSM::loadConfigFile() { std::unique_ptr reader = p.GetReader("mapcss-mapping.csv"); LOG(LINFO, ("File has size ", reader->Size())); + + ReaderStreamBuf buffer(std::move(reader)); + std::istream s(&buffer); + + std::string line; + + int lineNumber = 0; + while (s.good()) + { + ++lineNumber; + getline(s, line); + strings::Trim(line); + + // skip empty lines and comments + if (line.empty() || line[0] == '#') + continue; + + LOG(LINFO, ("Reading line: ", line)); + + std::vector tokens = strings::Tokenize(line, ";"); + + if (tokens.size() == 2) + { + // OSM tags can be derived from type name + LOG(LINFO, ("simple type: ", tokens[0])); + } + else if (tokens.size() > 2) + { + LOG(LINFO, ("token size:", tokens.size(), " | osmTags: ", tokens[1])); + } + + + if (lineNumber > 70) + break; + + } + + ASSERT_FAIL("Don't run further tests-------------------"); } std::vector FeatureTypeToOSM::typeToOSM(uint32_t type) diff --git a/libs/editor/xml_feature.cpp b/libs/editor/xml_feature.cpp index 16b1cb1da..389193068 100644 --- a/libs/editor/xml_feature.cpp +++ b/libs/editor/xml_feature.cpp @@ -1,6 +1,6 @@ #include "editor/xml_feature.hpp" -#include "editor/feature_type_to_osm.hpp" +//#include "editor/feature_type_to_osm.hpp" #include "editor/keys_to_remove.hpp" #include "indexer/classificator.hpp"