[core] reparse tiles when new data arrives
We're now reparsing tiles when they expire. We're also swapping out buckets atomically to avoid flickering data; i.e. we're displaying the old data as long as we don't have a new parsed bucket for that layer yet. The parsed buckets now live in the *TileData objects rather than in the TileWorker; only partially parsed == pending buckets will remain in the TileWorker. Once they're parsed, they're moved to the *TileData object.
This commit is contained in:
@@ -27,12 +27,13 @@ public:
|
||||
Bucket* getBucket(StyleLayer const &layer_desc) override;
|
||||
|
||||
private:
|
||||
TexturePool& texturePool;
|
||||
const SourceInfo& source;
|
||||
Worker& worker;
|
||||
RequestHolder req;
|
||||
|
||||
RasterLayoutProperties layout;
|
||||
RasterBucket bucket;
|
||||
std::unique_ptr<Bucket> bucket;
|
||||
|
||||
std::unique_ptr<WorkRequest> workRequest;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user