diff options
author | Langston Smith <langston.smith@mapbox.com> | 2018-01-04 11:15:50 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-01-04 11:15:50 -0800 |
commit | 2ea955d2751ba6459f99a0695e53505c0a11702b (patch) | |
tree | f54450918b634a2eea1bd2c4ebc671bf1bb06106 /platform/android/src/android_renderer_backend.cpp | |
parent | f2ec6ae326bad79fea2b06a21151a2835522572a (diff) | |
parent | c62b0af24fc76b4bb2eb34100611dd3ee9ee5536 (diff) | |
download | qtlocation-mapboxgl-upstream/ls-android-readme-tweaks.tar.gz |
Merge branch 'master' into ls-android-readme-tweaksupstream/ls-android-readme-tweaks
Diffstat (limited to 'platform/android/src/android_renderer_backend.cpp')
-rwxr-xr-x | platform/android/src/android_renderer_backend.cpp | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/platform/android/src/android_renderer_backend.cpp b/platform/android/src/android_renderer_backend.cpp new file mode 100755 index 0000000000..ae35acc5da --- /dev/null +++ b/platform/android/src/android_renderer_backend.cpp @@ -0,0 +1,63 @@ +#include "android_renderer_backend.hpp" + +#include <mbgl/gl/context.hpp> + +#include <EGL/egl.h> + +#include <cassert> + +namespace mbgl { +namespace android { + +/** + * From mbgl::View + */ +void AndroidRendererBackend::bind() { + assert(BackendScope::exists()); + setFramebufferBinding(0); + setViewport(0, 0, getFramebufferSize()); +} + +/** + * From mbgl::RendererBackend. + */ +gl::ProcAddress AndroidRendererBackend::getExtensionFunctionPointer(const char* name) { + assert(BackendScope::exists()); + return eglGetProcAddress(name); +} + +void AndroidRendererBackend::updateViewPort() { + assert(BackendScope::exists()); + setViewport(0, 0, getFramebufferSize()); +} + +void AndroidRendererBackend::resizeFramebuffer(int width, int height) { + fbWidth = width; + fbHeight = height; +} + +PremultipliedImage AndroidRendererBackend::readFramebuffer() const { + assert(BackendScope::exists()); + return RendererBackend::readFramebuffer(getFramebufferSize()); +} + +mbgl::Size AndroidRendererBackend::getFramebufferSize() const { + return { static_cast<uint32_t>(fbWidth), static_cast<uint32_t>(fbHeight) }; +} + +/** + * From mbgl::RendererBackend. + */ +void AndroidRendererBackend::updateAssumedState() { + assumeFramebufferBinding(0); + assumeViewport(0, 0, getFramebufferSize()); +} + +void AndroidRendererBackend::markContextLost() { + if (context) { + context->setCleanupOnDestruction(false); + } +} + +} // namespace android +} // namspace mbgl |