diff options
author | John Firebaugh <john.firebaugh@gmail.com> | 2016-02-11 17:30:35 -0800 |
---|---|---|
committer | John Firebaugh <john.firebaugh@gmail.com> | 2016-02-11 17:30:35 -0800 |
commit | 62bbf2627a32a57188e4026aca8dc337e07ded7f (patch) | |
tree | 4db2a7e2bef2491eb7a8b98b0caa8b61aeae7283 /src/mbgl/tile/tile_cache.hpp | |
parent | 43c44eccdc56c50e41e8efbe5f7a34b57eed756f (diff) | |
download | qtlocation-mapboxgl-62bbf2627a32a57188e4026aca8dc337e07ded7f.tar.gz |
[core] Organize files that were in map folder better
Fixes #996
Diffstat (limited to 'src/mbgl/tile/tile_cache.hpp')
-rw-r--r-- | src/mbgl/tile/tile_cache.hpp | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/mbgl/tile/tile_cache.hpp b/src/mbgl/tile/tile_cache.hpp new file mode 100644 index 0000000000..199f611e79 --- /dev/null +++ b/src/mbgl/tile/tile_cache.hpp @@ -0,0 +1,31 @@ +#ifndef MBGL_MAP_TILE_CACHE +#define MBGL_MAP_TILE_CACHE + +#include <list> +#include <unordered_map> + +namespace mbgl { + +class TileData; + +class TileCache { +public: + TileCache(size_t size_ = 0) : size(size_) {} + + void setSize(size_t); + size_t getSize() const { return size; }; + void add(uint64_t key, std::shared_ptr<TileData> data); + std::shared_ptr<TileData> get(uint64_t key); + bool has(uint64_t key); + void clear(); + +private: + std::unordered_map<uint64_t, std::shared_ptr<TileData>> tiles; + std::list<uint64_t> orderedKeys; + + size_t size; +}; + +} // namespace mbgl + +#endif |