diff --git a/generator/statistics.cpp b/generator/statistics.cpp index e76ace432b..00ab7f5d52 100644 --- a/generator/statistics.cpp +++ b/generator/statistics.cpp @@ -5,6 +5,7 @@ #include "../indexer/feature_processor.hpp" #include "../indexer/classificator.hpp" #include "../indexer/feature_impl.hpp" +#include "../indexer/data_factory.hpp" #include "../base/string_utils.hpp" @@ -19,23 +20,30 @@ using namespace feature; namespace stats { void FileContainerStatistic(string const & fPath) - { - FilesContainerR cont(fPath); + { + feature::DataHeader header; + ModelReaderPtr reader(new FileReader(fPath)); + LoadMapHeader(reader, header); vector tags; tags.push_back(VERSION_FILE_TAG); tags.push_back(HEADER_FILE_TAG); tags.push_back(DATA_FILE_TAG); - for (int i = 0; i < ARRAY_SIZE(feature::g_arrCountryScales); ++i) + for (size_t i = 0; i < header.GetScalesCount(); ++i) { + cout << header.GetScale(i) << " "; + tags.push_back(feature::GetTagForIndex(GEOMETRY_FILE_TAG, i)); tags.push_back(feature::GetTagForIndex(TRIANGLE_FILE_TAG, i)); } + 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) { cout << setw(7) << tags[i] << " : "; diff --git a/indexer/data_factory.cpp b/indexer/data_factory.cpp index 6ae76cfe8a..729bcfb7a5 100644 --- a/indexer/data_factory.cpp +++ b/indexer/data_factory.cpp @@ -22,9 +22,9 @@ void LoadMapHeader(FilesContainerR const & cont, feature::DataHeader & header) header.LoadVer1(r); } -void LoadMapHeader(ModelReader * pReader, feature::DataHeader & header) +void LoadMapHeader(ModelReaderPtr const & reader, feature::DataHeader & header) { - LoadMapHeader(FilesContainerR(pReader), header); + LoadMapHeader(FilesContainerR(reader), header); } void IndexFactory::Load(FilesContainerR const & cont) diff --git a/indexer/data_factory.hpp b/indexer/data_factory.hpp index 0d0ea57975..c4e4c140a9 100644 --- a/indexer/data_factory.hpp +++ b/indexer/data_factory.hpp @@ -19,4 +19,4 @@ public: IntervalIndexIFace * CreateIndex(ModelReaderPtr reader); }; -void LoadMapHeader(ModelReader * pReader, feature::DataHeader & header); +void LoadMapHeader(ModelReaderPtr const & reader, feature::DataHeader & header);