Add layer wrapper and generic layer

This commit is contained in:
Dan Paulat 2021-11-27 11:37:01 -06:00
parent 9ff6eabd2a
commit a010cc55c3
12 changed files with 187 additions and 40 deletions

View file

@ -0,0 +1,36 @@
#pragma once
#include <scwx/qt/map/generic_layer.hpp>
namespace scwx
{
namespace qt
{
namespace map
{
class LayerWrapperImpl;
class LayerWrapper : public QMapbox::CustomLayerHostInterface
{
public:
explicit LayerWrapper(std::shared_ptr<GenericLayer> layer);
~LayerWrapper();
LayerWrapper(const LayerWrapper&) = delete;
LayerWrapper& operator=(const LayerWrapper&) = delete;
LayerWrapper(LayerWrapper&&) noexcept;
LayerWrapper& operator=(LayerWrapper&&) noexcept;
void initialize() override final;
void render(const QMapbox::CustomLayerRenderParameters&) override final;
void deinitialize() override final;
private:
std::unique_ptr<LayerWrapperImpl> p;
};
} // namespace map
} // namespace qt
} // namespace scwx