#pragma once #include #include namespace mbgl { namespace style { class GeoJSONData; } // namespace style class RenderGeoJSONSource final : public RenderTileSource { public: explicit RenderGeoJSONSource(Immutable); ~RenderGeoJSONSource() override; void update(Immutable, const std::vector>&, bool needsRendering, bool needsRelayout, const TileParameters&) override; FeatureExtensionValue queryFeatureExtensions(const Feature& feature, const std::string& extension, const std::string& extensionField, const optional>& args) const override; private: const style::GeoJSONSource::Impl& impl() const; std::weak_ptr data; }; } // namespace mbgl