summaryrefslogtreecommitdiff
path: root/include/mbgl/geometry
diff options
context:
space:
mode:
authorJohn Firebaugh <john.firebaugh@gmail.com>2014-09-02 11:33:45 -0700
committerJohn Firebaugh <john.firebaugh@gmail.com>2014-09-03 18:12:40 -0700
commit4694aa40ada7d33732806f7fbb50b9abb2c412da (patch)
tree46589b66931f579af36abd9b981e4554b5d65365 /include/mbgl/geometry
parent586cb9144af29e1a384de1c3d5162e916954098e (diff)
downloadqtlocation-mapboxgl-4694aa40ada7d33732806f7fbb50b9abb2c412da.tar.gz
Add SpriteAtlas::getPosition()
Diffstat (limited to 'include/mbgl/geometry')
-rw-r--r--include/mbgl/geometry/sprite_atlas.hpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/include/mbgl/geometry/sprite_atlas.hpp b/include/mbgl/geometry/sprite_atlas.hpp
index 5044e4d3e6..0946f0fc48 100644
--- a/include/mbgl/geometry/sprite_atlas.hpp
+++ b/include/mbgl/geometry/sprite_atlas.hpp
@@ -9,12 +9,19 @@
#include <mutex>
#include <atomic>
#include <set>
+#include <array>
namespace mbgl {
class Sprite;
class SpritePosition;
+struct SpriteAtlasPosition {
+ std::array<float, 2> size;
+ std::array<float, 2> tl;
+ std::array<float, 2> br;
+};
+
class SpriteAtlas : public util::noncopyable {
public:
typedef uint16_t dimension;
@@ -42,6 +49,8 @@ public:
// NEVER CALL THIS FUNCTION FROM THE RENDER THREAD! it is blocking.
Rect<dimension> waitForImage(const std::string &name, const Sprite &sprite);
+ SpriteAtlasPosition getPosition(const std::string &name, const Sprite &sprite, bool repeating = false);
+
// Binds the image buffer of this sprite atlas to the GPU, and uploads data if it is out
// of date.
void bind(bool linear = false);