diff options
author | Asheem Mamoowala <asheem.mamoowala@mapbox.com> | 2017-11-29 20:18:40 -0800 |
---|---|---|
committer | Asheem Mamoowala <asheem.mamoowala@mapbox.com> | 2017-12-05 11:05:44 -0800 |
commit | 9b0459171d29a55e9332de0998e3653a689661fc (patch) | |
tree | 8408f630d0b7626de79dea186fd8b0aba93fd90d /src/mbgl/tile/custom_geometry_tile.hpp | |
parent | f16ecf59074e6c1f6296eb03f30b744eaa66779f (diff) | |
download | qtlocation-mapboxgl-9b0459171d29a55e9332de0998e3653a689661fc.tar.gz |
[core] Mark custom geometry tiles stale without clearing data
Diffstat (limited to 'src/mbgl/tile/custom_geometry_tile.hpp')
-rw-r--r-- | src/mbgl/tile/custom_geometry_tile.hpp | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/mbgl/tile/custom_geometry_tile.hpp b/src/mbgl/tile/custom_geometry_tile.hpp index 66cc412e8c..1df44e6b2a 100644 --- a/src/mbgl/tile/custom_geometry_tile.hpp +++ b/src/mbgl/tile/custom_geometry_tile.hpp @@ -1,13 +1,19 @@ #pragma once #include <mbgl/tile/geometry_tile.hpp> +#include <mbgl/style/sources/custom_geometry_source.hpp> #include <mbgl/util/feature.hpp> -#include <mbgl/style/custom_tile_loader.hpp> +#include <mbgl/util/geojson.hpp> +#include <mbgl/actor/mailbox.hpp> namespace mbgl { class TileParameters; +namespace style { +class CustomTileLoader; +} // namespace style + class CustomGeometryTile: public GeometryTile { public: CustomGeometryTile(const OverscaledTileID&, @@ -16,7 +22,9 @@ public: const style::CustomGeometrySource::TileOptions, ActorRef<style::CustomTileLoader> loader); ~CustomGeometryTile() override; + void setTileData(const GeoJSON& data); + void invalidateTileData(); void setNecessity(TileNecessity) final; @@ -25,10 +33,12 @@ public: const SourceQueryOptions&) override; private: + bool stale = true; TileNecessity necessity; const style::CustomGeometrySource::TileOptions options; ActorRef<style::CustomTileLoader> loader; - Actor<style::SetTileDataFunction> actor; + std::shared_ptr<Mailbox> mailbox; + ActorRef<CustomGeometryTile> actorRef; }; } // namespace mbgl |