[android] extract RendererBackend from NativeMapView
This commit is contained in:
committed by
Ivo van Dongen
parent
c0544d8500
commit
e780cdc29e
55
platform/android/src/android_renderer_backend.cpp
Executable file
55
platform/android/src/android_renderer_backend.cpp
Executable file
@@ -0,0 +1,55 @@
|
||||
#include "android_renderer_backend.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::initializeExtension(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());
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user