diff options
Diffstat (limited to 'src/mbgl/style/sources')
-rw-r--r-- | src/mbgl/style/sources/custom_vector_source.cpp | 18 | ||||
-rw-r--r-- | src/mbgl/style/sources/custom_vector_source_impl.cpp | 32 | ||||
-rw-r--r-- | src/mbgl/style/sources/custom_vector_source_impl.hpp | 27 |
3 files changed, 77 insertions, 0 deletions
diff --git a/src/mbgl/style/sources/custom_vector_source.cpp b/src/mbgl/style/sources/custom_vector_source.cpp new file mode 100644 index 0000000000..e0bbd85af7 --- /dev/null +++ b/src/mbgl/style/sources/custom_vector_source.cpp @@ -0,0 +1,18 @@ +#include <mbgl/style/sources/custom_vector_source.hpp> +#include <mbgl/style/sources/custom_vector_source_impl.hpp> + +namespace mbgl { +namespace style { + +CustomVectorSource::CustomVectorSource(std::string id, + const GeoJSONOptions options, + FetchTileFunction fetchTileFn) + : Source(makeMutable<CustomVectorSource::Impl>(std::move(id), options, fetchTileFn)) { +} + +void CustomVectorSource::loadDescription(FileSource&) { + loaded = true; +} + +} // namespace style +} // namespace mbgl diff --git a/src/mbgl/style/sources/custom_vector_source_impl.cpp b/src/mbgl/style/sources/custom_vector_source_impl.cpp new file mode 100644 index 0000000000..1b5ee4e5d1 --- /dev/null +++ b/src/mbgl/style/sources/custom_vector_source_impl.cpp @@ -0,0 +1,32 @@ +#include <mbgl/style/sources/custom_vector_source_impl.hpp> + +#include <mbgl/style/source_observer.hpp> +#include <mbgl/tile/geojson_tile.hpp> +#include <mbgl/tile/vector_tile.hpp> +#include <mbgl/util/tile_cover.hpp> + +namespace mbgl { +namespace style { + +CustomVectorSource::Impl::Impl(std::string id_, + const GeoJSONOptions options_, + FetchTileFunction fetchTileFn_) + : Source::Impl(SourceType::CustomVector, std::move(id_)), + options(options_), + fetchTileFn(fetchTileFn_) { +} + +optional<std::string> CustomVectorSource::Impl::getAttribution() const { + return {}; +} + +GeoJSONOptions CustomVectorSource::Impl::getOptions() const { + return options; +} + +FetchTileFunction CustomVectorSource::Impl::getFetchTileFunction() const { + return fetchTileFn; +} + +} // namespace style +} // namespace mbgl diff --git a/src/mbgl/style/sources/custom_vector_source_impl.hpp b/src/mbgl/style/sources/custom_vector_source_impl.hpp new file mode 100644 index 0000000000..aa07bc800d --- /dev/null +++ b/src/mbgl/style/sources/custom_vector_source_impl.hpp @@ -0,0 +1,27 @@ +#pragma once + +#include <mbgl/style/source_impl.hpp> +#include <mbgl/style/sources/custom_vector_source.hpp> +#include <mbgl/tile/tile_id.hpp> + +namespace mbgl { +namespace style { + +class CustomVectorSource::Impl : public Source::Impl { +public: + Impl(std::string id, + GeoJSONOptions options, + FetchTileFunction fetchTileFn); + + optional<std::string> getAttribution() const final; + + GeoJSONOptions getOptions() const; + FetchTileFunction getFetchTileFunction() const; + +private: + GeoJSONOptions options; + FetchTileFunction fetchTileFn; +}; + +} // namespace style +} // namespace mbgl |