From 9d6b50828e2cbce2d0e8a9611b1dccad5123a4bd Mon Sep 17 00:00:00 2001 From: John Firebaugh Date: Wed, 15 Jun 2016 14:46:03 -0700 Subject: [PATCH] [core] Runtime source API: part 2 --- src/mbgl/style/source.cpp | 18 ++++++++++++++++++ src/mbgl/style/sources/geojson_source.cpp | 8 ++++++++ src/mbgl/style/sources/raster_source.cpp | 12 ++++++++++++ src/mbgl/style/sources/vector_source.cpp | 12 ++++++++++++ 4 files changed, 50 insertions(+) create mode 100644 src/mbgl/style/source.cpp create mode 100644 src/mbgl/style/sources/geojson_source.cpp create mode 100644 src/mbgl/style/sources/raster_source.cpp create mode 100644 src/mbgl/style/sources/vector_source.cpp diff --git a/src/mbgl/style/source.cpp b/src/mbgl/style/source.cpp new file mode 100644 index 000000000..4c83a3ce0 --- /dev/null +++ b/src/mbgl/style/source.cpp @@ -0,0 +1,18 @@ +#include +#include + +namespace mbgl { +namespace style { + +Source::Source(SourceType type_, std::unique_ptr baseImpl_) + : baseImpl(std::move(baseImpl_)), type(type_) { +} + +Source::~Source() = default; + +const std::string& Source::getID() const { + return baseImpl->id; +} + +} // namespace style +} // namespace mbgl diff --git a/src/mbgl/style/sources/geojson_source.cpp b/src/mbgl/style/sources/geojson_source.cpp new file mode 100644 index 000000000..b5932581d --- /dev/null +++ b/src/mbgl/style/sources/geojson_source.cpp @@ -0,0 +1,8 @@ +#include +#include + +namespace mbgl { +namespace style { + +} // namespace style +} // namespace mbgl diff --git a/src/mbgl/style/sources/raster_source.cpp b/src/mbgl/style/sources/raster_source.cpp new file mode 100644 index 000000000..3c65476df --- /dev/null +++ b/src/mbgl/style/sources/raster_source.cpp @@ -0,0 +1,12 @@ +#include +#include + +namespace mbgl { +namespace style { + +RasterSource::RasterSource(std::string id, variant urlOrTileset, uint16_t tileSize) + : Source(SourceType::Raster, std::make_unique(std::move(id), *this, std::move(urlOrTileset), tileSize)) { +} + +} // namespace style +} // namespace mbgl diff --git a/src/mbgl/style/sources/vector_source.cpp b/src/mbgl/style/sources/vector_source.cpp new file mode 100644 index 000000000..f2a6b166a --- /dev/null +++ b/src/mbgl/style/sources/vector_source.cpp @@ -0,0 +1,12 @@ +#include +#include + +namespace mbgl { +namespace style { + +VectorSource::VectorSource(std::string id, variant urlOrTileset) + : Source(SourceType::Vector, std::make_unique(std::move(id), *this, std::move(urlOrTileset))) { +} + +} // namespace style +} // namespace mbgl