From b79ade75a8885d627646c474bbc5f04c268de5ef Mon Sep 17 00:00:00 2001 From: Sergey Yershov Date: Thu, 11 Dec 2014 21:37:16 +0300 Subject: Add generator_tool options for work with file instead stdin --- generator/feature_generator.cpp | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'generator/feature_generator.cpp') 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 -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(info); + return GenerateImpl(info, osm_filename); else - return GenerateImpl(info); + return GenerateImpl(info, osm_filename); } } -- cgit v1.2.3