MCPcopy Create free account
hub / github.com/comaps/comaps / Engine

Method Engine

libs/search/engine.cpp:81–104  ·  view source on GitHub ↗

Engine ------------------------------------------------------------------------------------------

Source from the content-addressed store, hash-verified

79
80// Engine ------------------------------------------------------------------------------------------
81Engine::Engine(DataSource & dataSource, CategoriesHolder const & categories,
82 storage::CountryInfoGetter const & infoGetter, Params const & params)
83 : m_shutdown(false)
84{
85 InitSuggestions doInit;
86 categories.ForEachName(doInit);
87 doInit.GetSuggests(m_suggests);
88
89 m_contexts.resize(params.m_numThreads);
90 for (size_t i = 0; i < params.m_numThreads; ++i)
91 {
92 auto processor = make_unique<Processor>(dataSource, categories, m_suggests, infoGetter);
93 processor->SetPreferredLocale(params.m_locale);
94 m_contexts[i].m_processor = std::move(processor);
95 }
96
97 m_threads.reserve(params.m_numThreads);
98 for (size_t i = 0; i < params.m_numThreads; ++i)
99 m_threads.emplace_back(&Engine::MainLoop, this, ref(m_contexts[i]));
100
101 CacheWorldLocalities();
102 LoadCitiesBoundaries();
103 LoadCountriesTree();
104}
105
106Engine::~Engine()
107{

Callers

nothing calls this directly

Calls 6

GetSuggestsMethod · 0.80
SetPreferredLocaleMethod · 0.80
ForEachNameMethod · 0.45
resizeMethod · 0.45
reserveMethod · 0.45
emplace_backMethod · 0.45

Tested by

no test coverage detected