#pragma once #include #include #include namespace mbgl { class LatLng; class AsyncRequest; namespace style { class ImageSource : public Source { public: ImageSource(std::string id, const std::array); ~ImageSource() override; optional getURL() const; void setURL(const std::string& url); void setImage(UnassociatedImage&&); void setCoordinates(const std::array&); std::array 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