Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVladimir Byko-Ianko <v.bykoianko@corp.mail.ru>2017-10-25 11:58:43 +0300
committermpimenov <mpimenov@users.noreply.github.com>2017-10-25 17:10:31 +0300
commit86966941d1c31434f3e3d69bde23f1bc47fe200f (patch)
tree10f20c26956feeaeef539fb1da1537221767d0c9 /generator
parent1629527527274cc7bf32fb2318a18c82305c0d5f (diff)
Keep ranges of stop ids in lines.
Diffstat (limited to 'generator')
-rw-r--r--generator/generator_tests/transit_test.cpp6
-rw-r--r--generator/transit_generator.cpp7
-rw-r--r--generator/transit_generator.hpp1
3 files changed, 11 insertions, 3 deletions
diff --git a/generator/generator_tests/transit_test.cpp b/generator/generator_tests/transit_test.cpp
index 2c18796259..9ca0963243 100644
--- a/generator/generator_tests/transit_test.cpp
+++ b/generator/generator_tests/transit_test.cpp
@@ -251,11 +251,11 @@ UNIT_TEST(DeserializerFromJson_Lines)
vector<Line> const expected = {Line(19207936 /* line id */, "1" /* number */, "Московская линия" /* title */,
"subway" /* type */, 2 /* network id */,
- {343262691, 343259523, 343252898, 209191847, 2947858576} /* stop ids */),
+ {{343262691, 343259523, 343252898, 209191847, 2947858576}} /* stop ids */),
Line(19207937 /* line id */, "2" /* number */, "Московская линия" /* title */,
"subway" /* type */, 2 /* network id */,
- {246659391, 246659390, 209191855, 209191854, 209191853,
- 209191852, 209191851} /* stop ids */)};
+ {{246659391, 246659390, 209191855, 209191854, 209191853,
+ 209191852, 209191851}} /* stop ids */)};
TestDeserializerFromJson(jsonBuffer, "lines", expected);
}
diff --git a/generator/transit_generator.cpp b/generator/transit_generator.cpp
index 0025c21001..5dbdfcc91c 100644
--- a/generator/transit_generator.cpp
+++ b/generator/transit_generator.cpp
@@ -230,6 +230,13 @@ void DeserializerFromJson::operator()(FeatureIdentifiers & id, char const * name
id = FeatureIdentifiers(osmId.EncodedId() /* osm id */, it->second[0] /* feature id */);
}
+void DeserializerFromJson::operator()(StopIdRanges & rs, char const * name)
+{
+ vector<StopId> stopIds;
+ (*this)(stopIds, name);
+ rs = StopIdRanges({stopIds});
+}
+
void BuildTransit(string const & mwmDir, string const & countryId,
string const & osmIdsToFeatureIdPath, string const & transitDir)
{
diff --git a/generator/transit_generator.hpp b/generator/transit_generator.hpp
index 2336a23a20..8e598fb9a0 100644
--- a/generator/transit_generator.hpp
+++ b/generator/transit_generator.hpp
@@ -40,6 +40,7 @@ public:
void operator()(m2::PointD & p, char const * name = nullptr);
void operator()(ShapeId & id, char const * name = nullptr);
void operator()(FeatureIdentifiers & id, char const * name = nullptr);
+ void operator()(StopIdRanges & rs, char const * name = nullptr);
template <typename T>
void operator()(std::vector<T> & vs, char const * name = nullptr)