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:
authorvng <viktor.govako@gmail.com>2014-09-20 17:22:09 +0400
committerAlex Zolotarev <alex@maps.me>2015-09-23 02:28:32 +0300
commit8d367208c6fd8dcbb7e30b806c8e17c28d1ac69d (patch)
treeb2ebdc03146485cb21dcc45b9cfeac064b466ccf /generator
parentf8da9e5245f631676de4c6572606d3e24d1b1b69 (diff)
[generator] Added statistics for routing container.
Diffstat (limited to 'generator')
-rw-r--r--generator/generator_tool/generator_tool.cpp1
-rw-r--r--generator/routing_generator.cpp13
-rw-r--r--generator/statistics.cpp41
3 files changed, 19 insertions, 36 deletions
diff --git a/generator/generator_tool/generator_tool.cpp b/generator/generator_tool/generator_tool.cpp
index d183851f77..0e7cce858f 100644
--- a/generator/generator_tool/generator_tool.cpp
+++ b/generator/generator_tool/generator_tool.cpp
@@ -230,6 +230,7 @@ int main(int argc, char ** argv)
LOG(LINFO, ("Calculating statistics for ", datFile));
stats::FileContainerStatistic(datFile);
+ stats::FileContainerStatistic(datFile + ROUTING_FILE_EXTENSION);
stats::MapInfo info;
stats::CalcStatistic(datFile, info);
diff --git a/generator/routing_generator.cpp b/generator/routing_generator.cpp
index b5f7f659b9..aa84c46fa9 100644
--- a/generator/routing_generator.cpp
+++ b/generator/routing_generator.cpp
@@ -1,14 +1,15 @@
#include "routing_generator.hpp"
#include "gen_mwm_info.hpp"
-#include "../coding/file_container.hpp"
-
#include "../indexer/index.hpp"
#include "../indexer/classificator_loader.hpp"
#include "../indexer/feature.hpp"
#include "../indexer/ftypes_matcher.hpp"
#include "../indexer/mercator.hpp"
+#include "../coding/file_container.hpp"
+#include "../coding/internal/file_data.hpp"
+
#include "../geometry/distance_on_sphere.hpp"
#include "../routing/osrm2feature_map.hpp"
@@ -193,13 +194,13 @@ void GenerateNodesInfo(string const & mwmName, string const & osrmName)
LOG(LINFO, ("All:", all, "Found:", found, "Not found:", all - found, "More that one segs in node:", moreThan1Seg,
"Multiple:", multiple, "Equal:", equal));
- LOG(LINFO, ("Stored:", stored));
LOG(LINFO, ("Collect all data into one file..."));
+ string const fPath = mwmName + ROUTING_FILE_EXTENSION;
try
{
- FilesContainerW writer(mwmName + ROUTING_FILE_EXTENSION);
+ FilesContainerW writer(fPath);
mapping.Save(writer);
@@ -221,6 +222,10 @@ void GenerateNodesInfo(string const & mwmName, string const & osrmName)
{
LOG(LCRITICAL, ("Can't write routing index", ex.Msg()));
}
+
+ uint64_t sz;
+ VERIFY(my::GetFileSize(fPath, sz), ());
+ LOG(LINFO, ("Nodes stored:", stored, "Routing index file size:", sz));
}
}
diff --git a/generator/statistics.cpp b/generator/statistics.cpp
index 339e1796d6..ab9e7ad0e9 100644
--- a/generator/statistics.cpp
+++ b/generator/statistics.cpp
@@ -8,6 +8,7 @@
#include "../indexer/data_factory.hpp"
#include "../base/string_utils.hpp"
+#include "../base/logging.hpp"
#include "../std/iostream.hpp"
#include "../std/iomanip.hpp"
@@ -19,41 +20,17 @@ namespace stats
{
void FileContainerStatistic(string const & fPath)
{
- feature::DataHeader header;
- ModelReaderPtr reader(new FileReader(fPath));
- LoadMapHeader(reader, header);
-
- vector<string> tags;
- tags.push_back(VERSION_FILE_TAG);
- tags.push_back(HEADER_FILE_TAG);
- tags.push_back(DATA_FILE_TAG);
-
- cout << "Geometry zoom levels: ";
- for (size_t i = 0; i < header.GetScalesCount(); ++i)
+ try
{
- cout << header.GetScale(i) << " ";
-
- tags.push_back(feature::GetTagForIndex(GEOMETRY_FILE_TAG, i));
- tags.push_back(feature::GetTagForIndex(TRIANGLE_FILE_TAG, i));
+ FilesContainerR cont(fPath);
+ cont.ForEachTag([&cont] (FilesContainerR::Tag const & tag)
+ {
+ cout << setw(10) << tag << " : " << cont.GetReader(tag).Size() << endl;
+ });
}
-
- cout << endl;
-
- tags.push_back(INDEX_FILE_TAG);
- tags.push_back(SEARCH_INDEX_FILE_TAG);
-
- FilesContainerR cont(reader);
- for (size_t i = 0; i < tags.size(); ++i)
+ catch (Reader::Exception const & ex)
{
- cout << setw(7) << tags[i] << " : ";
- try
- {
- cout << cont.GetReader(tags[i]).Size() << endl;
- }
- catch (Reader::Exception const &)
- {
- cout << '-' << endl;
- }
+ LOG(LWARNING, ("Error reading file:", fPath, ex.Msg()));
}
}