#pragma once #include #include #include namespace mbgl { class LatLng; class AsyncRequest; namespace style { class ImageSource : public Source { public: ImageSource(std::string id, const std::vector); ~ImageSource() override; const std::string& getURL() const; void setURL(const std::string& url) ; void setImage(mbgl::UnassociatedImage&&); void setCoordinates(const std::vector&); std::vector getCoordinates() const; class Impl; const Impl& impl() const; void loadDescription(FileSource&) final; private: optional url; std::unique_ptr req; }; template <> inline bool Source::is() const { return getType() == SourceType::Image; } } // namespace style } // namespace mbgl