#pragma once #include #include #include #include #include #include #include #include namespace mbgl { class BucketParameters; class HeatmapBucket final : public Bucket { public: HeatmapBucket(const BucketParameters&, const std::vector>&); ~HeatmapBucket() override; void addFeature(const GeometryTileFeature&, const GeometryCollection&, const ImagePositions&, const PatternLayerMap&) override; bool hasData() const override; void upload(gfx::UploadPass&) override; float getQueryRadius(const RenderLayer&) const override; bool supportsLayer(const style::Layer::Impl&) const override; gfx::VertexVector vertices; gfx::IndexVector triangles; SegmentVector segments; optional> vertexBuffer; optional indexBuffer; std::map paintPropertyBinders; const MapMode mode; }; } // namespace mbgl