Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'generator/coastlines_generator.hpp')
-rw-r--r--generator/coastlines_generator.hpp34
1 files changed, 34 insertions, 0 deletions
diff --git a/generator/coastlines_generator.hpp b/generator/coastlines_generator.hpp
new file mode 100644
index 0000000000..1a5df28e96
--- /dev/null
+++ b/generator/coastlines_generator.hpp
@@ -0,0 +1,34 @@
+#pragma once
+
+#include "feature_merger.hpp"
+
+#include "../indexer/cell_id.hpp"
+
+#include "../geometry/tree4d.hpp"
+#include "../geometry/region2d.hpp"
+
+
+class FeatureBuilder1;
+
+class CoastlineFeaturesGenerator
+{
+ typedef RectId CellIdT;
+
+ FeatureMergeProcessor m_merger;
+
+ m4::Tree<m2::RegionI> m_tree;
+
+ uint32_t m_coastType;
+ int m_Level;
+
+public:
+ CoastlineFeaturesGenerator(uint32_t coastType, int level = 6);
+
+ void AddRegionToTree(FeatureBuilder1 const & fb);
+
+ void operator() (FeatureBuilder1 const & fb);
+ void Finish();
+
+ inline size_t GetFeaturesCount() const { return 1 << 2 * m_Level; }
+ bool GetFeature(size_t i, FeatureBuilder1 & fb);
+};