summaryrefslogtreecommitdiff
path: root/src/mbgl/renderer/image_manager.cpp
diff options
context:
space:
mode:
authorKonstantin Käfer <mail@kkaefer.com>2019-05-13 17:13:31 -0700
committerKonstantin Käfer <mail@kkaefer.com>2019-05-15 10:55:58 -0700
commit867555b1c9ef51fec23ce77c682cf7d5b5a23c5e (patch)
treede380cbb7f5553282b081dce9202cbe9e502ebe5 /src/mbgl/renderer/image_manager.cpp
parent1a9e93e8d5fc6fd027160b3126eab03d0809ca69 (diff)
downloadqtlocation-mapboxgl-upstream/gfx-refactor-7.tar.gz
[core] add gfx::UploadPass, split startRender into prepare and uploadupstream/gfx-refactor-7
Diffstat (limited to 'src/mbgl/renderer/image_manager.cpp')
-rw-r--r--src/mbgl/renderer/image_manager.cpp12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/mbgl/renderer/image_manager.cpp b/src/mbgl/renderer/image_manager.cpp
index 936dac75c3..10375fe900 100644
--- a/src/mbgl/renderer/image_manager.cpp
+++ b/src/mbgl/renderer/image_manager.cpp
@@ -2,6 +2,7 @@
#include <mbgl/actor/actor.hpp>
#include <mbgl/actor/scheduler.hpp>
#include <mbgl/util/logging.hpp>
+#include <mbgl/gfx/upload_pass.hpp>
#include <mbgl/gfx/context.hpp>
#include <mbgl/renderer/image_manager_observer.hpp>
@@ -285,18 +286,19 @@ Size ImageManager::getPixelSize() const {
};
}
-void ImageManager::upload(gfx::Context& context) {
+void ImageManager::upload(gfx::UploadPass& uploadPass) {
if (!atlasTexture) {
- atlasTexture = context.createTexture(atlasImage);
+ atlasTexture = uploadPass.createTexture(atlasImage);
} else if (dirty) {
- context.updateTexture(*atlasTexture, atlasImage);
+ uploadPass.updateTexture(*atlasTexture, atlasImage);
}
dirty = false;
}
-gfx::TextureBinding ImageManager::textureBinding(gfx::Context& context) {
- upload(context);
+gfx::TextureBinding ImageManager::textureBinding() {
+ assert(atlasTexture);
+ assert(!dirty);
return { atlasTexture->getResource(), gfx::TextureFilterType::Linear };
}