summaryrefslogtreecommitdiff
path: root/platform/android/src/map_renderer.hpp
diff options
context:
space:
mode:
authorIvo van Dongen <info@ivovandongen.nl>2017-09-18 11:31:45 +0300
committerIvo van Dongen <ivovandongen@users.noreply.github.com>2017-09-22 23:33:56 +0300
commitc17be060fd910dbcaf7334356743421ac6936e7e (patch)
tree5f1636059cc7fe92e99e891d46119655af997db6 /platform/android/src/map_renderer.hpp
parent8182b26dfe7c1ffd5066e9f0c2f9536264308067 (diff)
downloadqtlocation-mapboxgl-c17be060fd910dbcaf7334356743421ac6936e7e.tar.gz
[android] map snapshots
Diffstat (limited to 'platform/android/src/map_renderer.hpp')
-rw-r--r--platform/android/src/map_renderer.hpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/platform/android/src/map_renderer.hpp b/platform/android/src/map_renderer.hpp
index ca216fc240..2039444457 100644
--- a/platform/android/src/map_renderer.hpp
+++ b/platform/android/src/map_renderer.hpp
@@ -1,6 +1,7 @@
#pragma once
#include <mbgl/actor/scheduler.hpp>
+#include <mbgl/util/image.hpp>
#include <memory>
#include <utility>
@@ -74,6 +75,15 @@ public:
void requestRender();
+ // Snapshot - requires a RunLoop on the calling thread
+ using SnapshotCallback = std::function<void (PremultipliedImage)>;
+ void requestSnapshot(SnapshotCallback);
+
+protected:
+ // Called from the GL Thread //
+
+ void scheduleSnapshot(std::unique_ptr<SnapshotCallback>);
+
private:
// Called from the GL Thread //
@@ -105,6 +115,8 @@ private:
std::mutex updateMutex;
bool framebufferSizeChanged = false;
+
+ std::unique_ptr<SnapshotCallback> snapshotCallback;
};
} // namespace android