supercell-wx/scwx-qt/source/scwx/qt/map/triangle_layer.hpp

35 lines
725 B
C++

#pragma once
#include <scwx/qt/util/gl.hpp>
#include <QMapboxGL>
namespace scwx
{
namespace qt
{
class TriangleLayerImpl;
class TriangleLayer : public QMapbox::CustomLayerHostInterface
{
public:
explicit TriangleLayer(OpenGLFunctions& gl);
~TriangleLayer();
TriangleLayer(const TriangleLayer&) = delete;
TriangleLayer& operator=(const TriangleLayer&) = delete;
TriangleLayer(TriangleLayer&&) noexcept;
TriangleLayer& operator=(TriangleLayer&&) noexcept;
void initialize() override final;
void render(const QMapbox::CustomLayerRenderParameters&) override final;
void deinitialize() override final;
private:
std::unique_ptr<TriangleLayerImpl> p;
};
} // namespace qt
} // namespace scwx