[all] Merge View into RendererBackend
This commit is contained in:
@@ -107,7 +107,6 @@ set(MBGL_CORE_FILES
|
||||
include/mbgl/map/map.hpp
|
||||
include/mbgl/map/map_observer.hpp
|
||||
include/mbgl/map/mode.hpp
|
||||
include/mbgl/map/view.hpp
|
||||
src/mbgl/map/map.cpp
|
||||
src/mbgl/map/transform.cpp
|
||||
src/mbgl/map/transform.hpp
|
||||
|
||||
@@ -17,8 +17,6 @@
|
||||
|
||||
namespace mbgl {
|
||||
|
||||
class Backend;
|
||||
class View;
|
||||
class FileSource;
|
||||
class Scheduler;
|
||||
class RendererFrontend;
|
||||
|
||||
@@ -1,18 +0,0 @@
|
||||
#pragma once
|
||||
|
||||
namespace mbgl {
|
||||
|
||||
class Map;
|
||||
|
||||
class View {
|
||||
public:
|
||||
virtual ~View() = default;
|
||||
|
||||
// Called when this View is used for rendering. Implementations should ensure that a renderable
|
||||
// object is bound and glClear/glDraw* calls can be done. They should also make sure that
|
||||
// calling .bind() repeatedly is a no-op and that the appropriate gl::Context values are
|
||||
// set to the current state.
|
||||
virtual void bind() = 0;
|
||||
};
|
||||
|
||||
} // namespace mbgl
|
||||
@@ -20,7 +20,6 @@ class RenderedQueryOptions;
|
||||
class Scheduler;
|
||||
class SourceQueryOptions;
|
||||
class UpdateParameters;
|
||||
class View;
|
||||
|
||||
class Renderer {
|
||||
public:
|
||||
@@ -31,7 +30,7 @@ public:
|
||||
|
||||
void setObserver(RendererObserver*);
|
||||
|
||||
void render(View& view, const UpdateParameters&);
|
||||
void render(const UpdateParameters&);
|
||||
|
||||
// Feature queries
|
||||
std::vector<Feature> queryRenderedFeatures(const ScreenLineString&, const RenderedQueryOptions& options = {}) const;
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
#pragma once
|
||||
|
||||
#include <mbgl/map/view.hpp>
|
||||
#include <mbgl/renderer/backend_scope.hpp>
|
||||
#include <mbgl/util/image.hpp>
|
||||
#include <mbgl/util/size.hpp>
|
||||
@@ -30,6 +29,12 @@ public:
|
||||
// Called prior to rendering to update the internally assumed OpenGL state.
|
||||
virtual void updateAssumedState() = 0;
|
||||
|
||||
// Called when this backend is used for rendering. Implementations should ensure that a renderable
|
||||
// object is bound and glClear/glDraw* calls can be done. They should also make sure that
|
||||
// calling .bind() repeatedly is a no-op and that the appropriate gl::Context values are
|
||||
// set to the current state.
|
||||
virtual void bind() = 0;
|
||||
|
||||
protected:
|
||||
// Called with the name of an OpenGL extension that should be loaded. RendererBackend implementations
|
||||
// must call the API-specific version that obtains the function pointer for this function,
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
#include "android_renderer_frontend.hpp"
|
||||
|
||||
#include <mbgl/map/view.hpp>
|
||||
#include <mbgl/renderer/backend_scope.hpp>
|
||||
#include <mbgl/renderer/renderer.hpp>
|
||||
|
||||
@@ -37,13 +36,13 @@ void AndroidRendererFrontend::update(std::shared_ptr<UpdateParameters> params) {
|
||||
asyncInvalidate.send();
|
||||
}
|
||||
|
||||
void AndroidRendererFrontend::render(View& view) {
|
||||
void AndroidRendererFrontend::render() {
|
||||
assert (renderer);
|
||||
if (!updateParameters) return;
|
||||
|
||||
BackendScope guard { backend };
|
||||
|
||||
renderer->render(view, *updateParameters);
|
||||
renderer->render(*updateParameters);
|
||||
}
|
||||
|
||||
void AndroidRendererFrontend::onLowMemory() {
|
||||
|
||||
@@ -13,9 +13,7 @@
|
||||
|
||||
namespace mbgl {
|
||||
|
||||
class View;
|
||||
class Renderer;
|
||||
class View;
|
||||
class RenderedQueryOptions;
|
||||
class SourceQueryOptions;
|
||||
|
||||
@@ -31,7 +29,7 @@ public:
|
||||
void setObserver(RendererObserver&) override;
|
||||
|
||||
void update(std::shared_ptr<UpdateParameters>) override;
|
||||
void render(View& view);
|
||||
void render();
|
||||
|
||||
// Feature querying
|
||||
std::vector<Feature> queryRenderedFeatures(const ScreenCoordinate&, const RenderedQueryOptions&) const;
|
||||
|
||||
@@ -107,7 +107,7 @@ NativeMapView::~NativeMapView() {
|
||||
}
|
||||
|
||||
/**
|
||||
* From mbgl::View
|
||||
* From mbgl::RendererBackend
|
||||
*/
|
||||
void NativeMapView::bind() {
|
||||
setFramebufferBinding(0);
|
||||
@@ -275,7 +275,7 @@ void NativeMapView::render(jni::JNIEnv& env) {
|
||||
framebufferSizeChanged = false;
|
||||
}
|
||||
|
||||
rendererFrontend->render(*this);
|
||||
rendererFrontend->render();
|
||||
|
||||
if(snapshot){
|
||||
snapshot = false;
|
||||
|
||||
@@ -4,7 +4,6 @@
|
||||
#include <mbgl/map/change.hpp>
|
||||
#include <mbgl/map/camera.hpp>
|
||||
#include <mbgl/map/map.hpp>
|
||||
#include <mbgl/map/view.hpp>
|
||||
#include <mbgl/util/noncopyable.hpp>
|
||||
#include <mbgl/util/default_thread_pool.hpp>
|
||||
#include <mbgl/util/run_loop.hpp>
|
||||
@@ -38,7 +37,7 @@ namespace android {
|
||||
|
||||
class AndroidRendererFrontend;
|
||||
|
||||
class NativeMapView : public View, public RendererBackend, public MapObserver {
|
||||
class NativeMapView : public RendererBackend, public MapObserver {
|
||||
public:
|
||||
|
||||
static constexpr auto Name() { return "com/mapbox/mapboxsdk/maps/NativeMapView"; };
|
||||
@@ -55,12 +54,9 @@ public:
|
||||
|
||||
virtual ~NativeMapView();
|
||||
|
||||
// mbgl::View //
|
||||
|
||||
void bind() override;
|
||||
|
||||
// mbgl::RendererBackend //
|
||||
|
||||
void bind() override;
|
||||
void updateAssumedState() override;
|
||||
|
||||
// Deprecated //
|
||||
|
||||
@@ -13,12 +13,10 @@
|
||||
class MGLRenderFrontend : public mbgl::RendererFrontend
|
||||
{
|
||||
public:
|
||||
MGLRenderFrontend(std::unique_ptr<mbgl::Renderer> renderer_, MGLMapView* nativeView_, mbgl::RendererBackend& mbglBackend_, mbgl::View& mbglView_, bool async = false)
|
||||
MGLRenderFrontend(std::unique_ptr<mbgl::Renderer> renderer_, MGLMapView* nativeView_, mbgl::RendererBackend& mbglBackend_, bool async = false)
|
||||
: renderer(std::move(renderer_))
|
||||
, nativeView(nativeView_)
|
||||
, mbglBackend(mbglBackend_)
|
||||
, mbglView(mbglView_) {
|
||||
|
||||
, mbglBackend(mbglBackend_) {
|
||||
if (async) {
|
||||
asyncInvalidate.emplace([&]() {
|
||||
[nativeView setNeedsGLDisplay];
|
||||
@@ -51,7 +49,7 @@ public:
|
||||
|
||||
mbgl::BackendScope guard { mbglBackend, mbgl::BackendScope::ScopeType::Implicit };
|
||||
|
||||
renderer->render(mbglView, *updateParameters);
|
||||
renderer->render(*updateParameters);
|
||||
}
|
||||
|
||||
mbgl::Renderer* getRenderer() {
|
||||
@@ -67,7 +65,6 @@ private:
|
||||
std::unique_ptr<mbgl::Renderer> renderer;
|
||||
__weak MGLMapView *nativeView = nullptr;
|
||||
mbgl::RendererBackend& mbglBackend;
|
||||
mbgl::View& mbglView;
|
||||
std::shared_ptr<mbgl::UpdateParameters> updateParameters;
|
||||
mbgl::optional<mbgl::util::AsyncTask> asyncInvalidate;
|
||||
};
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
#pragma once
|
||||
|
||||
#include <mbgl/map/view.hpp>
|
||||
#include <mbgl/renderer/renderer_backend.hpp>
|
||||
|
||||
#include <memory>
|
||||
@@ -10,7 +9,7 @@ namespace mbgl {
|
||||
|
||||
class HeadlessDisplay;
|
||||
|
||||
class HeadlessBackend : public View, public RendererBackend {
|
||||
class HeadlessBackend : public RendererBackend {
|
||||
public:
|
||||
HeadlessBackend(Size = { 256, 256 });
|
||||
~HeadlessBackend() override;
|
||||
|
||||
@@ -17,7 +17,7 @@ HeadlessFrontend::HeadlessFrontend(Size size_, float pixelRatio_, FileSource& fi
|
||||
asyncInvalidate([this] {
|
||||
if (renderer && updateParameters) {
|
||||
mbgl::BackendScope guard { backend };
|
||||
renderer->render(backend, *updateParameters);
|
||||
renderer->render(*updateParameters);
|
||||
}
|
||||
}),
|
||||
renderer(std::make_unique<Renderer>(backend, pixelRatio, fileSource, scheduler)) {
|
||||
|
||||
@@ -32,7 +32,7 @@ void GLFWRendererFrontend::render() {
|
||||
|
||||
mbgl::BackendScope guard { glfwView, mbgl::BackendScope::ScopeType::Implicit };
|
||||
|
||||
renderer->render(glfwView, *updateParameters);
|
||||
renderer->render(*updateParameters);
|
||||
}
|
||||
|
||||
mbgl::Renderer* GLFWRendererFrontend::getRenderer() {
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
#pragma once
|
||||
|
||||
#include <mbgl/map/map.hpp>
|
||||
#include <mbgl/map/view.hpp>
|
||||
#include <mbgl/renderer/renderer_backend.hpp>
|
||||
#include <mbgl/util/run_loop.hpp>
|
||||
#include <mbgl/util/timer.hpp>
|
||||
@@ -10,7 +9,7 @@
|
||||
struct GLFWwindow;
|
||||
class GLFWRendererFrontend;
|
||||
|
||||
class GLFWView : public mbgl::View, public mbgl::RendererBackend, public mbgl::MapObserver {
|
||||
class GLFWView : public mbgl::RendererBackend, public mbgl::MapObserver {
|
||||
public:
|
||||
GLFWView(bool fullscreen = false, bool benchmark = false);
|
||||
~GLFWView() override;
|
||||
@@ -37,12 +36,11 @@ public:
|
||||
|
||||
void invalidate();
|
||||
|
||||
// mbgl::View implementation
|
||||
void bind() override;
|
||||
mbgl::Size getSize() const;
|
||||
mbgl::Size getFramebufferSize() const;
|
||||
|
||||
// mbgl::RendererBackend implementation
|
||||
void bind() override;
|
||||
void updateAssumedState() override;
|
||||
|
||||
// mbgl::MapObserver implementation
|
||||
|
||||
@@ -6,7 +6,6 @@
|
||||
#import <OpenGLES/EAGL.h>
|
||||
|
||||
#include <mbgl/map/map.hpp>
|
||||
#include <mbgl/map/view.hpp>
|
||||
#include <mbgl/annotation/annotation.hpp>
|
||||
#include <mbgl/map/camera.hpp>
|
||||
#include <mbgl/map/mode.hpp>
|
||||
@@ -455,7 +454,7 @@ public:
|
||||
_mbglThreadPool = mbgl::sharedThreadPool();
|
||||
|
||||
auto renderer = std::make_unique<mbgl::Renderer>(*_mbglView, scaleFactor, *mbglFileSource, *_mbglThreadPool, mbgl::GLContextMode::Unique);
|
||||
_rendererFrontend = std::make_unique<MGLRenderFrontend>(std::move(renderer), self, *_mbglView, *_mbglView);
|
||||
_rendererFrontend = std::make_unique<MGLRenderFrontend>(std::move(renderer), self, *_mbglView);
|
||||
_mbglMap = new mbgl::Map(*_rendererFrontend, *_mbglView, self.size, scaleFactor, *mbglFileSource, *_mbglThreadPool, mbgl::MapMode::Continuous, mbgl::ConstrainMode::None, mbgl::ViewportMode::Default);
|
||||
|
||||
// start paused if in IB
|
||||
@@ -5417,7 +5416,7 @@ public:
|
||||
return _annotationViewReuseQueueByIdentifier[identifier];
|
||||
}
|
||||
|
||||
class MBGLView : public mbgl::View, public mbgl::RendererBackend, public mbgl::MapObserver
|
||||
class MBGLView : public mbgl::RendererBackend, public mbgl::MapObserver
|
||||
{
|
||||
public:
|
||||
MBGLView(MGLMapView* nativeView_) : nativeView(nativeView_) {
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
#import "MGLImageSource.h"
|
||||
|
||||
#import <mbgl/map/map.hpp>
|
||||
#import <mbgl/map/view.hpp>
|
||||
#import <mbgl/style/style.hpp>
|
||||
#import <mbgl/annotation/annotation.hpp>
|
||||
#import <mbgl/map/camera.hpp>
|
||||
@@ -275,7 +274,7 @@ public:
|
||||
_mbglThreadPool = mbgl::sharedThreadPool();
|
||||
|
||||
auto renderer = std::make_unique<mbgl::Renderer>(*_mbglView, [NSScreen mainScreen].backingScaleFactor, *mbglFileSource, *_mbglThreadPool, mbgl::GLContextMode::Unique);
|
||||
_rendererFrontend = std::make_unique<MGLRenderFrontend>(std::move(renderer), self, *_mbglView, *_mbglView, true);
|
||||
_rendererFrontend = std::make_unique<MGLRenderFrontend>(std::move(renderer), self, *_mbglView, true);
|
||||
_mbglMap = new mbgl::Map(*_rendererFrontend, *_mbglView, self.size, [NSScreen mainScreen].backingScaleFactor, *mbglFileSource, *_mbglThreadPool, mbgl::MapMode::Continuous, mbgl::ConstrainMode::None, mbgl::ViewportMode::Default);
|
||||
|
||||
// Install the OpenGL layer. Interface Builder’s synchronous drawing means
|
||||
@@ -2763,7 +2762,7 @@ public:
|
||||
}
|
||||
|
||||
/// Adapter responsible for bridging calls from mbgl to MGLMapView and Cocoa.
|
||||
class MGLMapViewImpl : public mbgl::View, public mbgl::RendererBackend, public mbgl::MapObserver {
|
||||
class MGLMapViewImpl : public mbgl::RendererBackend, public mbgl::MapObserver {
|
||||
public:
|
||||
MGLMapViewImpl(MGLMapView *nativeView_) : nativeView(nativeView_) {}
|
||||
|
||||
|
||||
@@ -1502,7 +1502,6 @@ QMapboxGLPrivate::QMapboxGLPrivate(QMapboxGL *q, const QMapboxGLSettings &settin
|
||||
frontend = std::make_unique<QMapboxGLRendererFrontend>(
|
||||
std::make_unique<mbgl::Renderer>(*this, pixelRatio, *fileSourceObj, *threadPool,
|
||||
static_cast<mbgl::GLContextMode>(settings.contextMode())),
|
||||
*this,
|
||||
*this);
|
||||
connect(frontend.get(), SIGNAL(updated()), this, SLOT(invalidate()));
|
||||
|
||||
|
||||
@@ -4,7 +4,6 @@
|
||||
#include "qmapboxgl_renderer_frontend_p.hpp"
|
||||
|
||||
#include <mbgl/map/map.hpp>
|
||||
#include <mbgl/map/view.hpp>
|
||||
#include <mbgl/renderer/renderer_backend.hpp>
|
||||
#include <mbgl/util/default_thread_pool.hpp>
|
||||
#include <mbgl/storage/default_file_source.hpp>
|
||||
@@ -13,7 +12,7 @@
|
||||
#include <QObject>
|
||||
#include <QSize>
|
||||
|
||||
class QMapboxGLPrivate : public QObject, public mbgl::View, public mbgl::RendererBackend, public mbgl::MapObserver
|
||||
class QMapboxGLPrivate : public QObject, public mbgl::RendererBackend, public mbgl::MapObserver
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
@@ -23,11 +22,8 @@ public:
|
||||
|
||||
mbgl::Size framebufferSize() const;
|
||||
|
||||
|
||||
// mbgl::View implementation.
|
||||
void bind() final;
|
||||
|
||||
// mbgl::RendererBackend implementation.
|
||||
void bind() final;
|
||||
void updateAssumedState() final;
|
||||
void activate() final {}
|
||||
void deactivate() final {}
|
||||
|
||||
@@ -3,10 +3,9 @@
|
||||
#include <mbgl/renderer/backend_scope.hpp>
|
||||
#include <mbgl/renderer/renderer.hpp>
|
||||
|
||||
QMapboxGLRendererFrontend::QMapboxGLRendererFrontend(std::unique_ptr<mbgl::Renderer> renderer_, mbgl::RendererBackend& backend_, mbgl::View& view_)
|
||||
QMapboxGLRendererFrontend::QMapboxGLRendererFrontend(std::unique_ptr<mbgl::Renderer> renderer_, mbgl::RendererBackend& backend_)
|
||||
: renderer(std::move(renderer_))
|
||||
, backend(backend_)
|
||||
, view(view_) {
|
||||
, backend(backend_) {
|
||||
}
|
||||
|
||||
QMapboxGLRendererFrontend::~QMapboxGLRendererFrontend() = default;
|
||||
@@ -34,5 +33,5 @@ void QMapboxGLRendererFrontend::render() {
|
||||
// The OpenGL implementation automatically enables the OpenGL context for us.
|
||||
mbgl::BackendScope scope { backend, mbgl::BackendScope::ScopeType::Implicit };
|
||||
|
||||
renderer->render(view, *updateParameters);
|
||||
renderer->render(*updateParameters);
|
||||
}
|
||||
|
||||
@@ -6,7 +6,6 @@
|
||||
#include <QObject>
|
||||
|
||||
namespace mbgl {
|
||||
class View;
|
||||
class Renderer;
|
||||
} // namespace mbgl
|
||||
|
||||
@@ -15,7 +14,7 @@ class QMapboxGLRendererFrontend : public QObject, public mbgl::RendererFrontend
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit QMapboxGLRendererFrontend(std::unique_ptr<mbgl::Renderer>, mbgl::RendererBackend&, mbgl::View&);
|
||||
explicit QMapboxGLRendererFrontend(std::unique_ptr<mbgl::Renderer>, mbgl::RendererBackend&);
|
||||
~QMapboxGLRendererFrontend() override;
|
||||
|
||||
void reset() override;
|
||||
@@ -32,6 +31,5 @@ signals:
|
||||
private:
|
||||
std::unique_ptr<mbgl::Renderer> renderer;
|
||||
mbgl::RendererBackend& backend;
|
||||
mbgl::View& view;
|
||||
std::shared_ptr<mbgl::UpdateParameters> updateParameters;
|
||||
};
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#include <mbgl/map/view.hpp>
|
||||
#include <mbgl/gl/context.hpp>
|
||||
#include <mbgl/gl/gl.hpp>
|
||||
#include <mbgl/gl/debugging_extension.hpp>
|
||||
|
||||
@@ -25,9 +25,6 @@
|
||||
#include <string>
|
||||
|
||||
namespace mbgl {
|
||||
|
||||
class View;
|
||||
|
||||
namespace gl {
|
||||
|
||||
constexpr size_t TextureMax = 64;
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
#include <mbgl/map/camera.hpp>
|
||||
#include <mbgl/map/transform.hpp>
|
||||
#include <mbgl/map/view.hpp>
|
||||
#include <mbgl/util/constants.hpp>
|
||||
#include <mbgl/util/mat4.hpp>
|
||||
#include <mbgl/util/math.hpp>
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
#include <mbgl/renderer/layers/render_custom_layer.hpp>
|
||||
#include <mbgl/renderer/paint_parameters.hpp>
|
||||
#include <mbgl/renderer/backend_scope.hpp>
|
||||
#include <mbgl/renderer/renderer_backend.hpp>
|
||||
#include <mbgl/renderer/bucket.hpp>
|
||||
#include <mbgl/style/layers/custom_layer_impl.hpp>
|
||||
#include <mbgl/map/transform_state.hpp>
|
||||
#include <mbgl/map/view.hpp>
|
||||
|
||||
namespace mbgl {
|
||||
|
||||
@@ -70,7 +70,7 @@ void RenderCustomLayer::render(PaintParameters& paintParameters, RenderSource*)
|
||||
|
||||
// Reset the view back to our original one, just in case the CustomLayer changed
|
||||
// the viewport or Framebuffer.
|
||||
paintParameters.view.bind();
|
||||
paintParameters.backend.bind();
|
||||
context.setDirtyState();
|
||||
}
|
||||
|
||||
|
||||
@@ -4,10 +4,10 @@
|
||||
#include <mbgl/renderer/paint_parameters.hpp>
|
||||
#include <mbgl/renderer/image_manager.hpp>
|
||||
#include <mbgl/renderer/render_static_data.hpp>
|
||||
#include <mbgl/renderer/renderer_backend.hpp>
|
||||
#include <mbgl/programs/programs.hpp>
|
||||
#include <mbgl/programs/fill_extrusion_program.hpp>
|
||||
#include <mbgl/tile/tile.hpp>
|
||||
#include <mbgl/map/view.hpp>
|
||||
#include <mbgl/style/layers/fill_extrusion_layer_impl.hpp>
|
||||
#include <mbgl/geometry/feature_index.hpp>
|
||||
#include <mbgl/util/math.hpp>
|
||||
@@ -131,7 +131,7 @@ void RenderFillExtrusionLayer::render(PaintParameters& parameters, RenderSource*
|
||||
}
|
||||
}
|
||||
|
||||
parameters.view.bind();
|
||||
parameters.backend.bind();
|
||||
parameters.context.bindTexture(parameters.staticData.extrusionTexture->getTexture());
|
||||
|
||||
mat4 viewportMat;
|
||||
|
||||
@@ -9,13 +9,13 @@ namespace mbgl {
|
||||
PaintParameters::PaintParameters(gl::Context& context_,
|
||||
float pixelRatio_,
|
||||
GLContextMode contextMode_,
|
||||
View& view_,
|
||||
RendererBackend& backend_,
|
||||
const UpdateParameters& updateParameters,
|
||||
RenderStyle& style,
|
||||
RenderStaticData& staticData_,
|
||||
FrameHistory& frameHistory_)
|
||||
: context(context_),
|
||||
view(view_),
|
||||
backend(backend_),
|
||||
state(updateParameters.transformState),
|
||||
evaluatedLight(style.getRenderLight().getEvaluated()),
|
||||
staticData(staticData_),
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
namespace mbgl {
|
||||
|
||||
class View;
|
||||
class RendererBackend;
|
||||
class UpdateParameters;
|
||||
class RenderStyle;
|
||||
class RenderStaticData;
|
||||
@@ -29,14 +29,14 @@ public:
|
||||
PaintParameters(gl::Context&,
|
||||
float pixelRatio,
|
||||
GLContextMode,
|
||||
View&,
|
||||
RendererBackend&,
|
||||
const UpdateParameters&,
|
||||
RenderStyle&,
|
||||
RenderStaticData&,
|
||||
FrameHistory&);
|
||||
|
||||
gl::Context& context;
|
||||
View& view;
|
||||
RendererBackend& backend;
|
||||
|
||||
const TransformState& state;
|
||||
const EvaluatedLight& evaluatedLight;
|
||||
|
||||
@@ -21,8 +21,8 @@ void Renderer::setObserver(RendererObserver* observer) {
|
||||
impl->setObserver(observer);
|
||||
}
|
||||
|
||||
void Renderer::render(View& view, const UpdateParameters& updateParameters) {
|
||||
impl->render(view, updateParameters);
|
||||
void Renderer::render(const UpdateParameters& updateParameters) {
|
||||
impl->render(updateParameters);
|
||||
}
|
||||
|
||||
std::vector<Feature> Renderer::queryRenderedFeatures(const ScreenLineString& geometry, const RenderedQueryOptions& options) const {
|
||||
|
||||
@@ -44,7 +44,7 @@ void Renderer::Impl::setObserver(RendererObserver* observer_) {
|
||||
observer = observer_ ? observer_ : &nullObserver();
|
||||
}
|
||||
|
||||
void Renderer::Impl::render(View& view, const UpdateParameters& updateParameters) {
|
||||
void Renderer::Impl::render(const UpdateParameters& updateParameters) {
|
||||
// Don't load/render anyting in still mode until explicitly requested.
|
||||
if (updateParameters.mode == MapMode::Still && !updateParameters.stillImageRequest) return;
|
||||
|
||||
@@ -61,7 +61,7 @@ void Renderer::Impl::render(View& view, const UpdateParameters& updateParameters
|
||||
backend.getContext(),
|
||||
pixelRatio,
|
||||
contextMode,
|
||||
view,
|
||||
backend,
|
||||
updateParameters,
|
||||
*renderStyle,
|
||||
*staticData,
|
||||
@@ -137,7 +137,7 @@ void Renderer::Impl::doRender(PaintParameters& parameters) {
|
||||
// tiles whatsoever.
|
||||
{
|
||||
MBGL_DEBUG_GROUP(parameters.context, "clear");
|
||||
parameters.view.bind();
|
||||
parameters.backend.bind();
|
||||
parameters.context.clear((parameters.debugOptions & MapDebugOptions::Overdraw)
|
||||
? Color::black()
|
||||
: renderData.backgroundColor,
|
||||
|
||||
@@ -13,7 +13,6 @@
|
||||
|
||||
namespace mbgl {
|
||||
|
||||
class View;
|
||||
class UpdateParameters;
|
||||
class PaintParameters;
|
||||
class RenderStyle;
|
||||
@@ -27,7 +26,7 @@ public:
|
||||
|
||||
void setObserver(RendererObserver*);
|
||||
|
||||
void render(View&, const UpdateParameters&);
|
||||
void render(const UpdateParameters&);
|
||||
|
||||
std::vector<Feature> queryRenderedFeatures(const ScreenLineString&, const RenderedQueryOptions&) const;
|
||||
std::vector<Feature> querySourceFeatures(const std::string& sourceID, const SourceQueryOptions&) const;
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
#pragma once
|
||||
|
||||
#include <mbgl/map/view.hpp>
|
||||
#include <mbgl/util/image.hpp>
|
||||
|
||||
namespace mbgl {
|
||||
@@ -15,16 +14,16 @@ enum class OffscreenTextureAttachment {
|
||||
Depth,
|
||||
};
|
||||
|
||||
class OffscreenTexture : public View {
|
||||
class OffscreenTexture {
|
||||
public:
|
||||
OffscreenTexture(gl::Context&,
|
||||
Size size = { 256, 256 },
|
||||
OffscreenTextureAttachment type = OffscreenTextureAttachment::None);
|
||||
~OffscreenTexture() override;
|
||||
~OffscreenTexture();
|
||||
OffscreenTexture(OffscreenTexture&&);
|
||||
OffscreenTexture& operator=(OffscreenTexture&&);
|
||||
|
||||
void bind() override;
|
||||
void bind();
|
||||
|
||||
PremultipliedImage readStillImage();
|
||||
|
||||
|
||||
@@ -50,7 +50,7 @@ TEST(Annotations, SymbolAnnotation) {
|
||||
test.map.addAnnotation(SymbolAnnotation { Point<double>(0, 0), "default_marker" });
|
||||
test.checkRendering("point_annotation");
|
||||
|
||||
// auto size = test.view.getSize();
|
||||
// auto size = test.frontend.getSize();
|
||||
// auto screenBox = ScreenBox { {}, { double(size.width), double(size.height) } };
|
||||
// for (uint8_t zoom = test.map.getMinZoom(); zoom <= test.map.getMaxZoom(); ++zoom) {
|
||||
// test.map.setZoom(zoom);
|
||||
|
||||
@@ -9,6 +9,8 @@ using namespace mbgl;
|
||||
|
||||
class StubRendererBackend: public RendererBackend {
|
||||
public:
|
||||
void bind() override {
|
||||
}
|
||||
|
||||
void activate() override {
|
||||
if (activateFunction) activateFunction();
|
||||
|
||||
Reference in New Issue
Block a user