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:
authorSergey Yershov <yershov@corp.mail.ru>2014-12-11 21:37:16 +0300
committerAlex Zolotarev <alex@maps.me>2015-09-23 02:35:24 +0300
commitb79ade75a8885d627646c474bbc5f04c268de5ef (patch)
tree3ecde383c0958389e1078b0bde7ba66510ebb237 /generator/feature_generator.cpp
parentf6576ce2aa557fb53fffd3ebdeaee0af29af6e41 (diff)
Add generator_tool options for work with file instead stdin
Diffstat (limited to 'generator/feature_generator.cpp')
-rw-r--r--generator/feature_generator.cpp17
1 files changed, 12 insertions, 5 deletions
diff --git a/generator/feature_generator.cpp b/generator/feature_generator.cpp
index b75a45164e..c41ddc5730 100644
--- a/generator/feature_generator.cpp
+++ b/generator/feature_generator.cpp
@@ -419,7 +419,7 @@ public:
}
template <class TNodesHolder>
-bool GenerateImpl(GenerateInfo & info)
+ bool GenerateImpl(GenerateInfo & info, std::string const &osm_filename=std::string())
{
try
{
@@ -435,7 +435,14 @@ bool GenerateImpl(GenerateInfo & info)
info.m_makeCoasts ? classif().GetCoastType() : 0,
info.m_addressFile);
- ParseXMLFromStdIn(parser);
+ if(osm_filename.empty())
+ {
+ ParseXMLFromStdIn(parser);
+ }
+ else
+ {
+ ParseXMLFromFile(parser, osm_filename);
+ }
// Stop if coasts are not merged and FLAG_fail_on_coasts is set
if (!bucketer.Finish())
@@ -451,12 +458,12 @@ bool GenerateImpl(GenerateInfo & info)
return true;
}
-bool GenerateFeatures(GenerateInfo & info, bool lightNodes)
+bool GenerateFeatures(GenerateInfo & info, bool lightNodes, std::string const &osm_filename)
{
if (lightNodes)
- return GenerateImpl<points_in_map>(info);
+ return GenerateImpl<points_in_map>(info, osm_filename);
else
- return GenerateImpl<points_in_file>(info);
+ return GenerateImpl<points_in_file>(info, osm_filename);
}
}