diff options
author | Yury Melnichek <melnichek@malinovka.local> | 2011-09-10 02:39:56 +0400 |
---|---|---|
committer | Alex Zolotarev <alex@maps.me> | 2015-09-23 01:23:32 +0300 |
commit | 208e163e75cce98b6c86bae494e122ccbb90ed74 (patch) | |
tree | 245f129b41eb28945af4d8db7421434ada3440f7 /indexer/feature_covering.hpp | |
parent | 7e2bcc9a00a8825ba7f0cac5900ba4a215041d7b (diff) |
Rename indexer/covering.?pp -> indexer/feature_covering.?pp.
Diffstat (limited to 'indexer/feature_covering.hpp')
-rw-r--r-- | indexer/feature_covering.hpp | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/indexer/feature_covering.hpp b/indexer/feature_covering.hpp new file mode 100644 index 0000000000..d171cf1edf --- /dev/null +++ b/indexer/feature_covering.hpp @@ -0,0 +1,30 @@ +#pragma once +#include "point_to_int64.hpp" + +#include "../geometry/rect2d.hpp" + +#include "../base/base.hpp" + +#include "../std/utility.hpp" +#include "../std/vector.hpp" + +class FeatureType; + +namespace covering +{ + typedef vector<pair<int64_t, int64_t> > IntervalsT; + + // Cover feature with RectIds and return their integer representations. + vector<int64_t> CoverFeature(FeatureType const & feature, + uint64_t cellPenaltyArea); + + void AppendLowerLevels(RectId id, IntervalsT & intervals); + + // Cover viewport with RectIds and append their RectIds as well. + IntervalsT CoverViewportAndAppendLowerLevels(m2::RectD const & rect); + + // Given a vector of intervals [a, b), sort them and merge overlapping intervals. + IntervalsT SortAndMergeIntervals(IntervalsT intervals); + + RectId GetRectIdAsIs(m2::RectD const & r); +} |