diff options
Diffstat (limited to 'src/mbgl/layout/layout.hpp')
-rw-r--r-- | src/mbgl/layout/layout.hpp | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/src/mbgl/layout/layout.hpp b/src/mbgl/layout/layout.hpp new file mode 100644 index 0000000000..de2d28728f --- /dev/null +++ b/src/mbgl/layout/layout.hpp @@ -0,0 +1,36 @@ +#pragma once + +#include <mbgl/style/layer_type.hpp> +#include <mbgl/renderer/image_atlas.hpp> +#include <mbgl/text/glyph_atlas.hpp> +#include <memory> + +namespace mbgl { + +class Bucket; +class BucketParameters; +class RenderLayer; +class FeatureIndex; + +class Layout { +public: + Layout() = default; + virtual ~Layout() = default; + + virtual void createBucket(const ImagePositions&, + std::unique_ptr<FeatureIndex>&, + std::unordered_map<std::string, std::shared_ptr<Bucket>>&, + const bool, + const bool) = 0; + + virtual void prepareSymbols(const GlyphMap&, const GlyphPositions&, + const ImageMap&, const ImagePositions&) {}; + + virtual bool hasSymbolInstances() const { + return true; + }; + + virtual bool hasDependencies() const = 0; +}; + +} // namespace mbgl |