[node, tests] Consolidate headless rendering logic in HeadlessFrontend

This commit is contained in:
John Firebaugh
2017-07-21 16:36:31 -07:00
parent 11933f6ab8
commit 32bd1d54fa
40 changed files with 380 additions and 770 deletions

View File

@@ -4,8 +4,7 @@
#include <mbgl/map/map.hpp>
#include <mbgl/storage/file_source.hpp>
#include <mbgl/gl/headless_backend.hpp>
#include <mbgl/gl/offscreen_view.hpp>
#include <mbgl/util/image.hpp>
#include <exception>
@@ -15,15 +14,13 @@
#include <nan.h>
#pragma GCC diagnostic pop
namespace node_mbgl {
class NodeRendererFrontend;
namespace mbgl {
class Map;
class HeadlessFrontend;
} // namespace mbgl
namespace node_mbgl {
class NodeBackend : public mbgl::HeadlessBackend {
public:
NodeBackend();
};
class NodeMapObserver : public mbgl::MapObserver {
void onDidFailLoadingMap(std::exception_ptr) override;
};
@@ -73,11 +70,9 @@ public:
std::unique_ptr<mbgl::AsyncRequest> request(const mbgl::Resource&, mbgl::FileSource::Callback);
const float pixelRatio;
NodeBackend backend;
std::unique_ptr<mbgl::OffscreenView> view;
NodeThreadPool threadpool;
NodeMapObserver mapObserver;
std::unique_ptr<NodeRendererFrontend> rendererFrontend;
std::unique_ptr<mbgl::HeadlessFrontend> frontend;
std::unique_ptr<mbgl::Map> map;
std::exception_ptr error;