diff options
Diffstat (limited to 'src/mbgl/renderer/circle_bucket.hpp')
-rw-r--r-- | src/mbgl/renderer/circle_bucket.hpp | 20 |
1 files changed, 6 insertions, 14 deletions
diff --git a/src/mbgl/renderer/circle_bucket.hpp b/src/mbgl/renderer/circle_bucket.hpp index 2f3faccdec..af7041a238 100644 --- a/src/mbgl/renderer/circle_bucket.hpp +++ b/src/mbgl/renderer/circle_bucket.hpp @@ -1,39 +1,31 @@ #pragma once #include <mbgl/renderer/bucket.hpp> -#include <mbgl/renderer/element_group.hpp> #include <mbgl/map/mode.hpp> #include <mbgl/tile/geometry_tile_data.hpp> #include <mbgl/gl/vertex_buffer.hpp> #include <mbgl/gl/index_buffer.hpp> -#include <mbgl/shader/circle_vertex.hpp> +#include <mbgl/gl/segment.hpp> +#include <mbgl/programs/circle_program.hpp> namespace mbgl { -class CircleShader; - class CircleBucket : public Bucket { public: CircleBucket(const MapMode); - ~CircleBucket() override; void upload(gl::Context&) override; void render(Painter&, PaintParameters&, const style::Layer&, const RenderTile&) override; bool hasData() const override; - bool needsClipping() const override; void addGeometry(const GeometryCollection&); - void drawCircles(CircleShader&, gl::Context&, PaintMode); - -private: - std::vector<CircleVertex> vertices; - std::vector<gl::Triangle> triangles; - - std::vector<ElementGroup<CircleShader>> groups; + gl::VertexVector<CircleVertex> vertices; + gl::IndexVector<gl::Triangles> triangles; + gl::SegmentVector<CircleAttributes> segments; optional<gl::VertexBuffer<CircleVertex>> vertexBuffer; - optional<gl::IndexBuffer<gl::Triangle>> indexBuffer; + optional<gl::IndexBuffer<gl::Triangles>> indexBuffer; const MapMode mode; }; |