supercell-wx/scwx-qt/source/scwx/qt/map/radar_layer.hpp
2021-08-08 08:24:40 -05:00

43 lines
814 B
C++

#pragma once
#include <scwx/qt/gl/gl.hpp>
#include <scwx/qt/view/radar_view.hpp>
#include <QMapboxGL>
namespace scwx
{
namespace qt
{
namespace map
{
class RadarLayerImpl;
class RadarLayer : public QObject, public QMapbox::CustomLayerHostInterface
{
Q_OBJECT
public:
explicit RadarLayer(std::shared_ptr<view::RadarView> radarView,
gl::OpenGLFunctions& gl);
~RadarLayer();
void initialize() override final;
void render(const QMapbox::CustomLayerRenderParameters&) override final;
void deinitialize() override final;
void UpdateColorTable();
void UpdatePlot();
public slots:
void ReceiveColorTableUpdate();
void ReceivePlotUpdate();
private:
std::unique_ptr<RadarLayerImpl> p;
};
} // namespace map
} // namespace qt
} // namespace scwx