/
githubmirror
/
omim
Обзор
Документация
Войти
/
githubmirror
/
omim
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
generator/final_processor_interface.hpp
36 строк
1 KB
Maksim Andrianov
[generator] Files generator/final_processor_intermediate_mwm.* were splitted into several files generator/final_processor_[processor type].*.
22 апр 2020, 18:26
22 апр 2020, 18:26
d3c46dd
Код
Авторство
О чём код?
#pragma once #include <cstdint> namespace generator { enum class FinalProcessorPriority : uint8_t { CountriesOrWorld = 1, WorldCoasts = 2, Complex = 3 }; // Classes that inherit this interface implement the final stage of intermediate mwm processing. // For example, attempt to merge the coastline or adding external elements. // Each derived class has a priority. This is done to comply with the order of processing // intermediate mwm, taking into account the dependencies between them. For example, before adding a // coastline to a country, we must build coastline. Processors with higher priority will be called // first. Processors with the same priority can run in parallel. class FinalProcessorIntermediateMwmInterface { public: explicit FinalProcessorIntermediateMwmInterface(FinalProcessorPriority priority); virtual ~FinalProcessorIntermediateMwmInterface() = default; virtual void Process() = 0; bool operator<(FinalProcessorIntermediateMwmInterface const & other) const; bool operator==(FinalProcessorIntermediateMwmInterface const & other) const; bool operator!=(FinalProcessorIntermediateMwmInterface const & other) const; protected: FinalProcessorPriority m_priority; }; } // namespace generator