From 834f8be3f8fafc6f05d7bfe5661a49572291b417 Mon Sep 17 00:00:00 2001 From: vng Date: Tue, 8 Dec 2015 13:56:57 +0300 Subject: [PATCH] [search] Moved search components to the search library. Moved search index builder to the generator. --- generator/dumper.cpp | 9 +++++--- generator/generator.pro | 2 ++ generator/generator_tool/generator_tool.cpp | 16 ++++++------- .../search_index_builder.cpp | 15 ++++++------ .../search_index_builder.hpp | 0 indexer/indexer.pro | 14 ----------- indexer/indexer_tests/indexer_tests.pro | 2 -- indexer/indexer_tests/succinct_trie_test.cpp | 1 - indexer/succinct_trie_reader.hpp | 2 -- indexer/trie_builder.hpp | 2 ++ map/address_finder.cpp | 3 ++- map/framework.cpp | 2 +- omim.pro | 8 +++---- search/approximate_string_match.hpp | 4 +++- {indexer => search}/categories_holder.cpp | 7 +++--- {indexer => search}/categories_holder.hpp | 0 search/feature_offset_match.hpp | 3 ++- search/house_detector.cpp | 2 +- search/intermediate_result.cpp | 2 +- search/keyword_lang_matcher.cpp | 7 +++--- search/keyword_matcher.cpp | 7 +++--- search/locality.cpp | 8 +++---- search/locality.hpp | 4 ++-- search/retrieval.cpp | 12 +++++----- {indexer => search}/reverse_geocoder.cpp | 2 +- {indexer => search}/reverse_geocoder.hpp | 0 search/search.pro | 10 ++++++++ {indexer => search}/search_delimiters.cpp | 2 +- {indexer => search}/search_delimiters.hpp | 0 search/search_engine.cpp | 7 +++--- search/search_engine.hpp | 3 +-- {indexer => search}/search_index_values.hpp | 0 .../retrieval_test.cpp | 23 ++++++++----------- .../search_query_v2_test.cpp | 12 ++++++---- search/search_query.cpp | 12 +++++----- search/search_query.hpp | 2 +- search/search_string_intersection.hpp | 2 +- {indexer => search}/search_string_utils.cpp | 2 +- {indexer => search}/search_string_utils.hpp | 0 .../search_tests}/categories_test.cpp | 2 +- search/search_tests/house_detector_tests.cpp | 2 +- .../keyword_lang_matcher_test.cpp | 6 ++--- search/search_tests/keyword_matcher_test.cpp | 7 +++--- .../search_string_utils_test.cpp | 3 ++- search/search_tests/search_tests.pro | 2 ++ search/search_tests/string_match_test.cpp | 4 ++-- .../search_tests_support.pro | 2 ++ .../search_tests_support/test_mwm_builder.cpp | 10 ++++---- .../test_results_matching.cpp | 8 ++++++- .../test_results_matching.hpp | 8 ++++++- .../test_search_engine.cpp | 6 ++--- {indexer => search}/search_trie.hpp | 8 ++----- search/v2/geocoder.cpp | 4 ++-- 53 files changed, 146 insertions(+), 135 deletions(-) rename {indexer => generator}/search_index_builder.cpp (97%) rename {indexer => generator}/search_index_builder.hpp (100%) rename {indexer => search}/categories_holder.cpp (98%) rename {indexer => search}/categories_holder.hpp (100%) rename {indexer => search}/reverse_geocoder.cpp (98%) rename {indexer => search}/reverse_geocoder.hpp (100%) rename {indexer => search}/search_delimiters.cpp (97%) rename {indexer => search}/search_delimiters.hpp (100%) rename {indexer => search}/search_index_values.hpp (100%) rename {indexer => search}/search_string_utils.cpp (99%) rename {indexer => search}/search_string_utils.hpp (100%) rename {indexer/indexer_tests => search/search_tests}/categories_test.cpp (99%) rename {indexer/indexer_tests => search/search_tests}/search_string_utils_test.cpp (97%) rename search/{search_integration_tests => search_tests_support}/test_results_matching.cpp (93%) rename search/{search_integration_tests => search_tests_support}/test_results_matching.hpp (88%) rename {indexer => search}/search_trie.hpp (69%) diff --git a/generator/dumper.cpp b/generator/dumper.cpp index 881a3d2c4a..e4587c76a5 100644 --- a/generator/dumper.cpp +++ b/generator/dumper.cpp @@ -1,10 +1,13 @@ #include "generator/dumper.hpp" +#include "search/search_delimiters.hpp" +#include "search/search_index_values.hpp" +#include "search/search_string_utils.hpp" +#include "search/search_trie.hpp" + #include "indexer/classificator.hpp" #include "indexer/feature_processor.hpp" -#include "indexer/search_delimiters.hpp" -#include "indexer/search_string_utils.hpp" -#include "indexer/search_trie.hpp" +#include "indexer/trie_reader.hpp" #include "coding/multilang_utf8_string.hpp" diff --git a/generator/generator.pro b/generator/generator.pro index 2e0dbb50a2..2201c68197 100644 --- a/generator/generator.pro +++ b/generator/generator.pro @@ -29,6 +29,7 @@ SOURCES += \ osm_id.cpp \ osm_source.cpp \ routing_generator.cpp \ + search_index_builder.cpp \ statistics.cpp \ tesselator.cpp \ unpack_mwm.cpp \ @@ -58,6 +59,7 @@ HEADERS += \ osm_xml_source.hpp \ polygonizer.hpp \ routing_generator.hpp \ + search_index_builder.hpp \ statistics.hpp \ tesselator.hpp \ unpack_mwm.hpp \ diff --git a/generator/generator_tool/generator_tool.cpp b/generator/generator_tool/generator_tool.cpp index 0e2d265713..5da7ee3981 100644 --- a/generator/generator_tool/generator_tool.cpp +++ b/generator/generator_tool/generator_tool.cpp @@ -1,15 +1,16 @@ -#include "generator/feature_generator.hpp" -#include "generator/feature_sorter.hpp" -#include "generator/update_generator.hpp" #include "generator/borders_generator.hpp" #include "generator/borders_loader.hpp" +#include "generator/check_model.hpp" #include "generator/dumper.hpp" +#include "generator/feature_generator.hpp" +#include "generator/feature_sorter.hpp" +#include "generator/generate_info.hpp" +#include "generator/osm_source.hpp" +#include "generator/routing_generator.hpp" +#include "generator/search_index_builder.hpp" #include "generator/statistics.hpp" #include "generator/unpack_mwm.hpp" -#include "generator/generate_info.hpp" -#include "generator/check_model.hpp" -#include "generator/routing_generator.hpp" -#include "generator/osm_source.hpp" +#include "generator/update_generator.hpp" #include "indexer/classificator.hpp" #include "indexer/classificator_loader.hpp" @@ -20,7 +21,6 @@ #include "indexer/index_builder.hpp" #include "indexer/map_style_reader.hpp" #include "indexer/rank_table.hpp" -#include "indexer/search_index_builder.hpp" #include "platform/platform.hpp" diff --git a/indexer/search_index_builder.cpp b/generator/search_index_builder.cpp similarity index 97% rename from indexer/search_index_builder.cpp rename to generator/search_index_builder.cpp index caceb7e50b..57a7245c02 100644 --- a/indexer/search_index_builder.cpp +++ b/generator/search_index_builder.cpp @@ -1,17 +1,18 @@ -#include "indexer/search_index_builder.hpp" +#include "search_index_builder.hpp" + +#include "search/categories_holder.hpp" +#include "search/reverse_geocoder.hpp" +#include "search/search_delimiters.hpp" +#include "search/search_index_values.hpp" +#include "search/search_string_utils.hpp" +#include "search/search_trie.hpp" -#include "indexer/categories_holder.hpp" #include "indexer/classificator.hpp" #include "indexer/feature_algo.hpp" #include "indexer/feature_utils.hpp" #include "indexer/feature_visibility.hpp" #include "indexer/features_vector.hpp" #include "indexer/index.hpp" -#include "indexer/reverse_geocoder.hpp" -#include "indexer/search_delimiters.hpp" -#include "indexer/search_index_values.hpp" -#include "indexer/search_string_utils.hpp" -#include "indexer/search_trie.hpp" #include "indexer/trie_builder.hpp" #include "indexer/types_skipper.hpp" diff --git a/indexer/search_index_builder.hpp b/generator/search_index_builder.hpp similarity index 100% rename from indexer/search_index_builder.hpp rename to generator/search_index_builder.hpp diff --git a/indexer/indexer.pro b/indexer/indexer.pro index 68539f6737..f8ad2cf487 100644 --- a/indexer/indexer.pro +++ b/indexer/indexer.pro @@ -10,7 +10,6 @@ ROOT_DIR = .. include($$ROOT_DIR/common.pri) SOURCES += \ - categories_holder.cpp \ classificator.cpp \ classificator_loader.cpp \ coding_params.cpp \ @@ -44,17 +43,12 @@ SOURCES += \ old/feature_loader_101.cpp \ point_to_int64.cpp \ rank_table.cpp \ - reverse_geocoder.cpp \ scales.cpp \ - search_delimiters.cpp \ - search_index_builder.cpp \ - search_string_utils.cpp \ types_mapping.cpp \ types_skipper.cpp \ HEADERS += \ - categories_holder.hpp \ cell_coverer.hpp \ cell_id.hpp \ classificator.hpp \ @@ -96,17 +90,9 @@ HEADERS += \ old/interval_index_101.hpp \ point_to_int64.hpp \ rank_table.hpp \ - reverse_geocoder.hpp \ scale_index.hpp \ scale_index_builder.hpp \ scales.hpp \ - search_delimiters.hpp \ - search_index_builder.hpp \ - search_index_values.hpp \ - search_string_utils.hpp \ - search_trie.hpp \ - string_file.hpp \ - succinct_trie.hpp \ succinct_trie_builder.hpp \ succinct_trie_reader.hpp \ tesselator_decl.hpp \ diff --git a/indexer/indexer_tests/indexer_tests.pro b/indexer/indexer_tests/indexer_tests.pro index d6c87aaca1..a399ae9db6 100644 --- a/indexer/indexer_tests/indexer_tests.pro +++ b/indexer/indexer_tests/indexer_tests.pro @@ -19,7 +19,6 @@ HEADERS += \ SOURCES += \ ../../testing/testingmain.cpp \ - categories_test.cpp \ cell_coverer_test.cpp \ cell_id_test.cpp \ checker_test.cpp \ @@ -35,7 +34,6 @@ SOURCES += \ point_to_int64_test.cpp \ rank_table_test.cpp \ scales_test.cpp \ - search_string_utils_test.cpp \ sort_and_merge_intervals_test.cpp \ succinct_trie_test.cpp \ test_polylines.cpp \ diff --git a/indexer/indexer_tests/succinct_trie_test.cpp b/indexer/indexer_tests/succinct_trie_test.cpp index 82ddc35f1d..92961d0ef7 100644 --- a/indexer/indexer_tests/succinct_trie_test.cpp +++ b/indexer/indexer_tests/succinct_trie_test.cpp @@ -3,7 +3,6 @@ #include "coding/reader.hpp" #include "coding/writer.hpp" -#include "indexer/search_trie.hpp" #include "indexer/succinct_trie_builder.hpp" #include "indexer/succinct_trie_reader.hpp" #include "indexer/trie.hpp" diff --git a/indexer/succinct_trie_reader.hpp b/indexer/succinct_trie_reader.hpp index 969302bb2d..07a97c9736 100644 --- a/indexer/succinct_trie_reader.hpp +++ b/indexer/succinct_trie_reader.hpp @@ -1,6 +1,4 @@ #pragma once -#include "indexer/trie.hpp" - #include "coding/bit_streams.hpp" #include "coding/huffman.hpp" #include "coding/reader.hpp" diff --git a/indexer/trie_builder.hpp b/indexer/trie_builder.hpp index 9fa7fd205e..b4b919d26a 100644 --- a/indexer/trie_builder.hpp +++ b/indexer/trie_builder.hpp @@ -1,4 +1,5 @@ #pragma once +#include "trie.hpp" #include "coding/byte_stream.hpp" #include "coding/varint.hpp" @@ -9,6 +10,7 @@ #include "std/algorithm.hpp" #include "std/vector.hpp" + // Trie format: // [1: header] // [node] ... [node] diff --git a/map/address_finder.cpp b/map/address_finder.cpp index 2b775b8fbf..c42b291210 100644 --- a/map/address_finder.cpp +++ b/map/address_finder.cpp @@ -1,11 +1,12 @@ #include "map/framework.hpp" +#include "search/categories_holder.hpp" #include "search/result.hpp" + #include "drape_frontend/visual_params.hpp" #include "indexer/classificator.hpp" #include "indexer/feature_visibility.hpp" -#include "indexer/categories_holder.hpp" #include "platform/preferred_languages.hpp" diff --git a/map/framework.cpp b/map/framework.cpp index f6b49c44fc..3acd9adac1 100644 --- a/map/framework.cpp +++ b/map/framework.cpp @@ -13,6 +13,7 @@ #include "routing/route.hpp" #include "routing/routing_algorithm.hpp" +#include "search/categories_holder.hpp" #include "search/geometry_utils.hpp" #include "search/intermediate_result.hpp" #include "search/result.hpp" @@ -27,7 +28,6 @@ #include "drape_frontend/watch/cpu_drawer.hpp" #include "drape_frontend/watch/feature_processor.hpp" -#include "indexer/categories_holder.hpp" #include "indexer/classificator_loader.hpp" #include "indexer/drawing_rules.hpp" #include "indexer/feature.hpp" diff --git a/omim.pro b/omim.pro index fd7171fb29..70d43a9211 100644 --- a/omim.pro +++ b/omim.pro @@ -23,7 +23,7 @@ HEADERS += defines.hpp CONFIG *= desktop } -SUBDIRS = 3party base coding geometry indexer routing +SUBDIRS = 3party base coding geometry indexer search routing !CONFIG(osrm) { SUBDIRS *= platform stats storage @@ -31,7 +31,7 @@ SUBDIRS = 3party base coding geometry indexer routing # Integration tests dependencies for gtool. # TODO(AlexZ): Avoid duplication for routing_integration_tests. CONFIG(gtool):!CONFIG(no-tests) { - SUBDIRS *= search map + SUBDIRS *= map routing_integration_tests.subdir = routing/routing_integration_tests routing_integration_tests.depends = $$SUBDIRS @@ -50,7 +50,7 @@ SUBDIRS = 3party base coding geometry indexer routing } !CONFIG(gtool):!CONFIG(osrm) { - SUBDIRS *= drape drape_frontend search map + SUBDIRS *= drape drape_frontend map CONFIG(map_designer):CONFIG(desktop) { SUBDIRS *= skin_generator @@ -64,7 +64,7 @@ SUBDIRS = 3party base coding geometry indexer routing CONFIG(desktop) { benchmark_tool.subdir = map/benchmark_tool - benchmark_tool.depends = 3party base coding geometry platform indexer map + benchmark_tool.depends = 3party base coding geometry platform indexer search map mapshot.depends = $$SUBDIRS qt.depends = $$SUBDIRS diff --git a/search/approximate_string_match.hpp b/search/approximate_string_match.hpp index ae98c41663..d597dbf8b9 100644 --- a/search/approximate_string_match.hpp +++ b/search/approximate_string_match.hpp @@ -1,7 +1,9 @@ #pragma once -#include "indexer/search_string_utils.hpp" +#include "search_string_utils.hpp" + #include "base/base.hpp" #include "base/buffer_vector.hpp" + #include "std/queue.hpp" namespace search diff --git a/indexer/categories_holder.cpp b/search/categories_holder.cpp similarity index 98% rename from indexer/categories_holder.cpp rename to search/categories_holder.cpp index 27b4ef1513..45470869af 100644 --- a/indexer/categories_holder.cpp +++ b/search/categories_holder.cpp @@ -1,6 +1,7 @@ -#include "indexer/categories_holder.hpp" -#include "indexer/search_delimiters.hpp" -#include "indexer/search_string_utils.hpp" +#include "categories_holder.hpp" +#include "search_delimiters.hpp" +#include "search_string_utils.hpp" + #include "indexer/classificator.hpp" #include "coding/reader.hpp" diff --git a/indexer/categories_holder.hpp b/search/categories_holder.hpp similarity index 100% rename from indexer/categories_holder.hpp rename to search/categories_holder.hpp diff --git a/search/feature_offset_match.hpp b/search/feature_offset_match.hpp index eec689e1a2..f4ec91ab1f 100644 --- a/search/feature_offset_match.hpp +++ b/search/feature_offset_match.hpp @@ -1,9 +1,10 @@ #pragma once #include "search/search_common.hpp" +#include "search/search_index_values.hpp" #include "search/search_query.hpp" #include "search/search_query_params.hpp" -#include "indexer/search_trie.hpp" +#include "indexer/trie.hpp" #include "base/mutex.hpp" #include "base/scope_guard.hpp" diff --git a/search/house_detector.cpp b/search/house_detector.cpp index 000372097f..8193ecdc3e 100644 --- a/search/house_detector.cpp +++ b/search/house_detector.cpp @@ -1,10 +1,10 @@ #include "search/algos.hpp" #include "search/house_detector.hpp" #include "search/search_common.hpp" +#include "search/search_string_utils.hpp" #include "indexer/classificator.hpp" #include "indexer/feature_impl.hpp" -#include "indexer/search_string_utils.hpp" #include "geometry/angles.hpp" #include "geometry/distance.hpp" diff --git a/search/intermediate_result.cpp b/search/intermediate_result.cpp index aef8e896b0..05256f4c71 100644 --- a/search/intermediate_result.cpp +++ b/search/intermediate_result.cpp @@ -1,3 +1,4 @@ +#include "categories_holder.hpp" #include "intermediate_result.hpp" #include "geometry_utils.hpp" @@ -7,7 +8,6 @@ #include "indexer/classificator.hpp" #include "indexer/feature.hpp" #include "indexer/scales.hpp" -#include "indexer/categories_holder.hpp" #include "geometry/angles.hpp" diff --git a/search/keyword_lang_matcher.cpp b/search/keyword_lang_matcher.cpp index 948b7be6d0..35b010b985 100644 --- a/search/keyword_lang_matcher.cpp +++ b/search/keyword_lang_matcher.cpp @@ -1,7 +1,6 @@ -#include "search/keyword_lang_matcher.hpp" - -#include "indexer/search_string_utils.hpp" -#include "indexer/search_delimiters.hpp" +#include "keyword_lang_matcher.hpp" +#include "search_delimiters.hpp" +#include "search_string_utils.hpp" #include "base/stl_add.hpp" diff --git a/search/keyword_matcher.cpp b/search/keyword_matcher.cpp index ea2c7b5498..09bb22b245 100644 --- a/search/keyword_matcher.cpp +++ b/search/keyword_matcher.cpp @@ -1,7 +1,6 @@ -#include "search/keyword_matcher.hpp" - -#include "indexer/search_delimiters.hpp" -#include "indexer/search_string_utils.hpp" +#include "keyword_matcher.hpp" +#include "search_delimiters.hpp" +#include "search_string_utils.hpp" #include "base/stl_add.hpp" diff --git a/search/locality.cpp b/search/locality.cpp index fe3ba7613e..1bee22baa7 100644 --- a/search/locality.cpp +++ b/search/locality.cpp @@ -1,13 +1,13 @@ -#include "search/locality.hpp" - -#include "indexer/search_delimiters.hpp" -#include "indexer/search_string_utils.hpp" +#include "locality.hpp" +#include "search_delimiters.hpp" +#include "search_string_utils.hpp" #include "base/assert.hpp" #include "std/algorithm.hpp" #include "std/limits.hpp" + namespace search { Locality::Locality() diff --git a/search/locality.hpp b/search/locality.hpp index 481aff060f..0bc5e5fa81 100644 --- a/search/locality.hpp +++ b/search/locality.hpp @@ -1,7 +1,7 @@ #pragma once - #include "indexer/ftypes_matcher.hpp" -#include "indexer/search_trie.hpp" + +#include "geometry/point2d.hpp" #include "base/buffer_vector.hpp" #include "base/string_utils.hpp" diff --git a/search/retrieval.cpp b/search/retrieval.cpp index 9f292ad1fd..db6d9bfd6e 100644 --- a/search/retrieval.cpp +++ b/search/retrieval.cpp @@ -1,14 +1,14 @@ -#include "search/retrieval.hpp" - -#include "search/feature_offset_match.hpp" -#include "search/interval_set.hpp" +#include "feature_offset_match.hpp" +#include "interval_set.hpp" +#include "retrieval.hpp" +#include "search_index_values.hpp" +#include "search_trie.hpp" #include "indexer/feature.hpp" #include "indexer/feature_algo.hpp" #include "indexer/index.hpp" #include "indexer/scales.hpp" -#include "indexer/search_index_values.hpp" -#include "indexer/search_trie.hpp" +#include "indexer/trie_reader.hpp" #include "platform/mwm_version.hpp" diff --git a/indexer/reverse_geocoder.cpp b/search/reverse_geocoder.cpp similarity index 98% rename from indexer/reverse_geocoder.cpp rename to search/reverse_geocoder.cpp index 3142e7c354..1ee336b737 100644 --- a/indexer/reverse_geocoder.cpp +++ b/search/reverse_geocoder.cpp @@ -1,11 +1,11 @@ #include "reverse_geocoder.hpp" +#include "search_string_utils.hpp" #include "indexer/feature.hpp" #include "indexer/feature_algo.hpp" #include "indexer/ftypes_matcher.hpp" #include "indexer/index.hpp" #include "indexer/scales.hpp" -#include "indexer/search_string_utils.hpp" namespace search diff --git a/indexer/reverse_geocoder.hpp b/search/reverse_geocoder.hpp similarity index 100% rename from indexer/reverse_geocoder.hpp rename to search/reverse_geocoder.hpp diff --git a/search/search.pro b/search/search.pro index 8f78c4ec8b..eae239f7a3 100644 --- a/search/search.pro +++ b/search/search.pro @@ -11,6 +11,7 @@ include($$ROOT_DIR/common.pri) HEADERS += \ algos.hpp \ approximate_string_match.hpp \ + categories_holder.hpp \ dummy_rank_table.hpp \ feature_offset_match.hpp \ geometry_utils.hpp \ @@ -28,12 +29,17 @@ HEADERS += \ region.hpp \ result.hpp \ retrieval.hpp \ + reverse_geocoder.hpp \ search_common.hpp \ + search_delimiters.hpp \ search_engine.hpp \ + search_index_values.hpp \ search_query.hpp \ search_query_factory.hpp \ search_query_params.hpp \ search_string_intersection.hpp \ + search_string_utils.hpp \ + search_trie.hpp \ suggest.hpp \ v2/features_layer.hpp \ v2/features_layer_matcher.hpp \ @@ -44,6 +50,7 @@ HEADERS += \ SOURCES += \ approximate_string_match.cpp \ + categories_holder.cpp \ dummy_rank_table.cpp \ geometry_utils.cpp \ house_detector.cpp \ @@ -58,9 +65,12 @@ SOURCES += \ region.cpp \ result.cpp \ retrieval.cpp \ + reverse_geocoder.cpp \ + search_delimiters.cpp \ search_engine.cpp \ search_query.cpp \ search_query_params.cpp \ + search_string_utils.cpp \ v2/features_layer.cpp \ v2/features_layer_matcher.cpp \ v2/features_layer_path_finder.cpp \ diff --git a/indexer/search_delimiters.cpp b/search/search_delimiters.cpp similarity index 97% rename from indexer/search_delimiters.cpp rename to search/search_delimiters.cpp index ff2d068415..237942dc5b 100644 --- a/indexer/search_delimiters.cpp +++ b/search/search_delimiters.cpp @@ -1,4 +1,4 @@ -#include "indexer/search_delimiters.hpp" +#include "search_delimiters.hpp" namespace search { diff --git a/indexer/search_delimiters.hpp b/search/search_delimiters.hpp similarity index 100% rename from indexer/search_delimiters.hpp rename to search/search_delimiters.hpp diff --git a/search/search_engine.cpp b/search/search_engine.cpp index 2d0394a547..5e6f92f163 100644 --- a/search/search_engine.cpp +++ b/search/search_engine.cpp @@ -1,13 +1,14 @@ -#include "geometry_utils.hpp" #include "search_engine.hpp" + +#include "categories_holder.hpp" +#include "geometry_utils.hpp" #include "search_query.hpp" +#include "search_string_utils.hpp" #include "storage/country_info_getter.hpp" -#include "indexer/categories_holder.hpp" #include "indexer/classificator.hpp" #include "indexer/scales.hpp" -#include "indexer/search_string_utils.hpp" #include "platform/platform.hpp" diff --git a/search/search_engine.hpp b/search/search_engine.hpp index 18c74602ef..45468eb00e 100644 --- a/search/search_engine.hpp +++ b/search/search_engine.hpp @@ -1,5 +1,6 @@ #pragma once +#include "categories_holder.hpp" #include "params.hpp" #include "result.hpp" #include "search_query_factory.hpp" @@ -7,8 +8,6 @@ #include "geometry/rect2d.hpp" -#include "indexer/categories_holder.hpp" - #include "coding/reader.hpp" #include "base/macros.hpp" diff --git a/indexer/search_index_values.hpp b/search/search_index_values.hpp similarity index 100% rename from indexer/search_index_values.hpp rename to search/search_index_values.hpp diff --git a/search/search_integration_tests/retrieval_test.cpp b/search/search_integration_tests/retrieval_test.cpp index 73df230c74..ca532ca9a6 100644 --- a/search/search_integration_tests/retrieval_test.cpp +++ b/search/search_integration_tests/retrieval_test.cpp @@ -1,24 +1,19 @@ #include "testing/testing.hpp" -#include "search/search_integration_tests/test_feature.hpp" -#include "search/search_integration_tests/test_mwm_builder.hpp" -#include "search/search_integration_tests/test_results_matching.hpp" -#include "search/search_integration_tests/test_search_engine.hpp" -#include "search/search_integration_tests/test_search_request.hpp" +#include "search/retrieval.hpp" +#include "search/search_delimiters.hpp" +#include "search/search_query_params.hpp" +#include "search/search_string_utils.hpp" +#include "search/search_tests_support/test_feature.hpp" +#include "search/search_tests_support/test_mwm_builder.hpp" +#include "search/search_tests_support/test_results_matching.hpp" +#include "search/search_tests_support/test_search_engine.hpp" +#include "search/search_tests_support/test_search_request.hpp" #include "indexer/classificator_loader.hpp" #include "indexer/index.hpp" #include "indexer/mwm_set.hpp" #include "indexer/scales.hpp" -#include "indexer/search_delimiters.hpp" -#include "indexer/search_string_utils.hpp" - -#include "search/retrieval.hpp" -#include "search/search_query_params.hpp" -#include "search/search_tests_support/test_feature.hpp" -#include "search/search_tests_support/test_mwm_builder.hpp" -#include "search/search_tests_support/test_search_engine.hpp" -#include "search/search_tests_support/test_search_request.hpp" #include "storage/country_decl.hpp" #include "storage/country_info_getter.hpp" diff --git a/search/search_integration_tests/search_query_v2_test.cpp b/search/search_integration_tests/search_query_v2_test.cpp index b1f02d09ce..0c9bc8587c 100644 --- a/search/search_integration_tests/search_query_v2_test.cpp +++ b/search/search_integration_tests/search_query_v2_test.cpp @@ -1,10 +1,10 @@ #include "testing/testing.hpp" -#include "search/search_integration_tests/test_feature.hpp" -#include "search/search_integration_tests/test_mwm_builder.hpp" -#include "search/search_integration_tests/test_results_matching.hpp" -#include "search/search_integration_tests/test_search_engine.hpp" -#include "search/search_integration_tests/test_search_request.hpp" +#include "search/search_tests_support/test_feature.hpp" +#include "search/search_tests_support/test_mwm_builder.hpp" +#include "search/search_tests_support/test_results_matching.hpp" +#include "search/search_tests_support/test_search_engine.hpp" +#include "search/search_tests_support/test_search_request.hpp" #include "search/search_query_factory.hpp" #include "search/v2/search_query_v2.hpp" @@ -24,6 +24,8 @@ #include "base/scope_guard.hpp" +using namespace search::tests_support; + namespace { void Cleanup(platform::LocalCountryFile const & map) diff --git a/search/search_query.cpp b/search/search_query.cpp index 2e420127a4..4dd445ee32 100644 --- a/search/search_query.cpp +++ b/search/search_query.cpp @@ -1,5 +1,6 @@ -#include "search/search_query.hpp" +#include "search_query.hpp" +#include "search/categories_holder.hpp" #include "search/dummy_rank_table.hpp" #include "search/feature_offset_match.hpp" #include "search/geometry_utils.hpp" @@ -8,14 +9,15 @@ #include "search/locality.hpp" #include "search/region.hpp" #include "search/search_common.hpp" +#include "search/search_delimiters.hpp" +#include "search/search_index_values.hpp" #include "search/search_query_params.hpp" #include "search/search_string_intersection.hpp" +#include "search/search_string_utils.hpp" #include "storage/country_info_getter.hpp" -#include "indexer/categories_holder.hpp" #include "indexer/classificator.hpp" - #include "indexer/feature.hpp" #include "indexer/feature_algo.hpp" #include "indexer/feature_covering.hpp" @@ -23,9 +25,7 @@ #include "indexer/features_vector.hpp" #include "indexer/index.hpp" #include "indexer/scales.hpp" -#include "indexer/search_delimiters.hpp" -#include "indexer/search_index_values.hpp" -#include "indexer/search_string_utils.hpp" +#include "indexer/trie_reader.hpp" #include "platform/mwm_version.hpp" #include "platform/preferred_languages.hpp" diff --git a/search/search_query.hpp b/search/search_query.hpp index 035cb35727..dddbf59104 100644 --- a/search/search_query.hpp +++ b/search/search_query.hpp @@ -2,12 +2,12 @@ #include "search/intermediate_result.hpp" #include "search/keyword_lang_matcher.hpp" #include "search/retrieval.hpp" +#include "search/search_trie.hpp" #include "search/suggest.hpp" #include "indexer/ftypes_matcher.hpp" #include "indexer/index.hpp" #include "indexer/rank_table.hpp" -#include "indexer/search_trie.hpp" #include "geometry/rect2d.hpp" diff --git a/search/search_string_intersection.hpp b/search/search_string_intersection.hpp index 377e8e35d2..4535541069 100644 --- a/search/search_string_intersection.hpp +++ b/search/search_string_intersection.hpp @@ -1,6 +1,6 @@ #pragma once -#include "indexer/search_delimiters.hpp" +#include "search_delimiters.hpp" namespace search diff --git a/indexer/search_string_utils.cpp b/search/search_string_utils.cpp similarity index 99% rename from indexer/search_string_utils.cpp rename to search/search_string_utils.cpp index fc3586b260..fecb4bdfe7 100644 --- a/indexer/search_string_utils.cpp +++ b/search/search_string_utils.cpp @@ -1,4 +1,4 @@ -#include "indexer/search_string_utils.hpp" +#include "search_string_utils.hpp" #include "base/macros.hpp" diff --git a/indexer/search_string_utils.hpp b/search/search_string_utils.hpp similarity index 100% rename from indexer/search_string_utils.hpp rename to search/search_string_utils.hpp diff --git a/indexer/indexer_tests/categories_test.cpp b/search/search_tests/categories_test.cpp similarity index 99% rename from indexer/indexer_tests/categories_test.cpp rename to search/search_tests/categories_test.cpp index e61b3a446f..cbb9c43114 100644 --- a/indexer/indexer_tests/categories_test.cpp +++ b/search/search_tests/categories_test.cpp @@ -1,6 +1,6 @@ #include "testing/testing.hpp" -#include "indexer/categories_holder.hpp" +#include "search/categories_holder.hpp" #include "indexer/classificator.hpp" #include "indexer/classificator_loader.hpp" diff --git a/search/search_tests/house_detector_tests.cpp b/search/search_tests/house_detector_tests.cpp index de78d58ae4..d18ec10aa4 100644 --- a/search/search_tests/house_detector_tests.cpp +++ b/search/search_tests/house_detector_tests.cpp @@ -1,13 +1,13 @@ #include "testing/testing.hpp" #include "search/house_detector.hpp" +#include "search/search_string_utils.hpp" #include "indexer/classificator_loader.hpp" #include "indexer/data_header.hpp" #include "indexer/ftypes_matcher.hpp" #include "indexer/index.hpp" #include "indexer/scales.hpp" -#include "indexer/search_string_utils.hpp" #include "platform/platform.hpp" diff --git a/search/search_tests/keyword_lang_matcher_test.cpp b/search/search_tests/keyword_lang_matcher_test.cpp index 27f7138529..052008d113 100644 --- a/search/search_tests/keyword_lang_matcher_test.cpp +++ b/search/search_tests/keyword_lang_matcher_test.cpp @@ -1,8 +1,8 @@ #include "testing/testing.hpp" -#include "search/keyword_lang_matcher.hpp" -#include "indexer/search_delimiters.hpp" -#include "indexer/search_string_utils.hpp" +#include "search/keyword_lang_matcher.hpp" +#include "search/search_delimiters.hpp" +#include "search/search_string_utils.hpp" #include "base/stl_add.hpp" diff --git a/search/search_tests/keyword_matcher_test.cpp b/search/search_tests/keyword_matcher_test.cpp index 40606f266e..20da662447 100644 --- a/search/search_tests/keyword_matcher_test.cpp +++ b/search/search_tests/keyword_matcher_test.cpp @@ -1,10 +1,9 @@ #include "testing/testing.hpp" + #include "search/keyword_matcher.hpp" - #include "search/search_common.hpp" - -#include "indexer/search_string_utils.hpp" -#include "indexer/search_delimiters.hpp" +#include "search/search_delimiters.hpp" +#include "search/search_string_utils.hpp" #include "base/buffer_vector.hpp" #include "base/stl_add.hpp" diff --git a/indexer/indexer_tests/search_string_utils_test.cpp b/search/search_tests/search_string_utils_test.cpp similarity index 97% rename from indexer/indexer_tests/search_string_utils_test.cpp rename to search/search_tests/search_string_utils_test.cpp index b4cf3eecb1..ecac3eeecf 100644 --- a/indexer/indexer_tests/search_string_utils_test.cpp +++ b/search/search_tests/search_string_utils_test.cpp @@ -1,5 +1,6 @@ #include "testing/testing.hpp" -#include "indexer/search_string_utils.hpp" + +#include "search/search_string_utils.hpp" #include "base/string_utils.hpp" diff --git a/search/search_tests/search_tests.pro b/search/search_tests/search_tests.pro index 4849ad90ab..68e9f542ad 100644 --- a/search/search_tests/search_tests.pro +++ b/search/search_tests/search_tests.pro @@ -17,6 +17,7 @@ macx-*: LIBS *= "-framework IOKit" SOURCES += \ ../../testing/testingmain.cpp \ algos_tests.cpp \ + categories_test.cpp \ house_detector_tests.cpp \ interval_set_test.cpp \ keyword_lang_matcher_test.cpp \ @@ -24,6 +25,7 @@ SOURCES += \ latlon_match_test.cpp \ locality_finder_test.cpp \ query_saver_tests.cpp \ + search_string_utils_test.cpp \ string_intersection_test.cpp \ string_match_test.cpp \ diff --git a/search/search_tests/string_match_test.cpp b/search/search_tests/string_match_test.cpp index 36b0e21b8d..21675977d9 100644 --- a/search/search_tests/string_match_test.cpp +++ b/search/search_tests/string_match_test.cpp @@ -1,10 +1,10 @@ #include "testing/testing.hpp" + #include "search/approximate_string_match.hpp" +#include "search/search_delimiters.hpp" #include "search/search_tests/match_cost_mock.hpp" -#include "indexer/search_delimiters.hpp" - #include "base/stl_add.hpp" #include "std/cstring.hpp" diff --git a/search/search_tests_support/search_tests_support.pro b/search/search_tests_support/search_tests_support.pro index 2fb4e3b095..8a8c23b824 100644 --- a/search/search_tests_support/search_tests_support.pro +++ b/search/search_tests_support/search_tests_support.pro @@ -9,11 +9,13 @@ include($$ROOT_DIR/common.pri) SOURCES += \ test_feature.cpp \ test_mwm_builder.cpp \ + test_results_matching.cpp \ test_search_engine.cpp \ test_search_request.cpp \ HEADERS += \ test_feature.hpp \ test_mwm_builder.hpp \ + test_results_matching.hpp \ test_search_engine.hpp \ test_search_request.hpp \ diff --git a/search/search_tests_support/test_mwm_builder.cpp b/search/search_tests_support/test_mwm_builder.cpp index 9410df8758..aa53fca8f9 100644 --- a/search/search_tests_support/test_mwm_builder.cpp +++ b/search/search_tests_support/test_mwm_builder.cpp @@ -2,14 +2,14 @@ #include "search/search_tests_support/test_feature.hpp" -#include "indexer/data_header.hpp" -#include "indexer/features_offsets_table.hpp" -#include "indexer/index_builder.hpp" -#include "indexer/search_index_builder.hpp" - #include "generator/feature_builder.hpp" #include "generator/feature_generator.hpp" #include "generator/feature_sorter.hpp" +#include "generator/search_index_builder.hpp" + +#include "indexer/data_header.hpp" +#include "indexer/features_offsets_table.hpp" +#include "indexer/index_builder.hpp" #include "platform/local_country_file.hpp" diff --git a/search/search_integration_tests/test_results_matching.cpp b/search/search_tests_support/test_results_matching.cpp similarity index 93% rename from search/search_integration_tests/test_results_matching.cpp rename to search/search_tests_support/test_results_matching.cpp index 28f1745ee8..f7055eec74 100644 --- a/search/search_integration_tests/test_results_matching.cpp +++ b/search/search_tests_support/test_results_matching.cpp @@ -1,10 +1,14 @@ -#include "search/search_integration_tests/test_results_matching.hpp" +#include "search/search_tests_support/test_results_matching.hpp" #include "indexer/feature_decl.hpp" #include "indexer/index.hpp" #include "std/sstream.hpp" +namespace search +{ +namespace tests_support +{ ExactMatch::ExactMatch(MwmSet::MwmId const & mwmId, shared_ptr feature) : m_mwmId(mwmId), m_feature(feature) { @@ -92,3 +96,5 @@ bool MatchResults(Index const & index, vector> rules, } string DebugPrint(MatchingRule const & rule) { return rule.ToString(); } +} // namespace tests_support +} // namespace search diff --git a/search/search_integration_tests/test_results_matching.hpp b/search/search_tests_support/test_results_matching.hpp similarity index 88% rename from search/search_integration_tests/test_results_matching.hpp rename to search/search_tests_support/test_results_matching.hpp index 887bf4c13e..d339344253 100644 --- a/search/search_integration_tests/test_results_matching.hpp +++ b/search/search_tests_support/test_results_matching.hpp @@ -1,6 +1,6 @@ #pragma once -#include "search/search_integration_tests/test_feature.hpp" +#include "search/search_tests_support/test_feature.hpp" #include "search/result.hpp" @@ -13,6 +13,10 @@ class FeatureType; class Index; +namespace search +{ +namespace tests_support +{ class MatchingRule { public: @@ -53,3 +57,5 @@ bool MatchResults(Index const & index, vector> rules, vector const & actual); string DebugPrint(MatchingRule const & rule); +} // namespace tests_support +} // namespace search diff --git a/search/search_tests_support/test_search_engine.cpp b/search/search_tests_support/test_search_engine.cpp index 49f124f2d5..fd18ebc22a 100644 --- a/search/search_tests_support/test_search_engine.cpp +++ b/search/search_tests_support/test_search_engine.cpp @@ -1,12 +1,12 @@ #include "search/search_tests_support/test_search_engine.hpp" -#include "indexer/categories_holder.hpp" -#include "indexer/scales.hpp" - +#include "search/categories_holder.hpp" #include "search/search_query.hpp" #include "search/search_query_factory.hpp" #include "search/suggest.hpp" +#include "indexer/scales.hpp" + #include "storage/country_info_getter.hpp" #include "platform/platform.hpp" diff --git a/indexer/search_trie.hpp b/search/search_trie.hpp similarity index 69% rename from indexer/search_trie.hpp rename to search/search_trie.hpp index ea63c822a1..944f5c3652 100644 --- a/indexer/search_trie.hpp +++ b/search/search_trie.hpp @@ -1,11 +1,7 @@ #pragma once -#include "indexer/geometry_serialization.hpp" -#include "indexer/search_index_values.hpp" -#include "indexer/trie.hpp" -#include "indexer/trie_reader.hpp" - -#include "coding/reader.hpp" +#include "indexer/coding_params.hpp" +#include "indexer/point_to_int64.hpp" namespace search { diff --git a/search/v2/geocoder.cpp b/search/v2/geocoder.cpp index 611251a4f4..1e65e187a9 100644 --- a/search/v2/geocoder.cpp +++ b/search/v2/geocoder.cpp @@ -2,11 +2,11 @@ #include "search/retrieval.hpp" #include "search/v2/features_layer_path_finder.hpp" +#include "search/search_delimiters.hpp" +#include "search/search_string_utils.hpp" #include "indexer/feature_decl.hpp" #include "indexer/index.hpp" -#include "indexer/search_delimiters.hpp" -#include "indexer/search_string_utils.hpp" #include "coding/multilang_utf8_string.hpp"