#pragma once #include namespace scwx::qt::map { class OverlayLayer : public DrawLayer { Q_DISABLE_COPY_MOVE(OverlayLayer) public: explicit OverlayLayer(const std::shared_ptr& glContext); ~OverlayLayer(); void Initialize(const std::shared_ptr& mapContext) final; void Render(const std::shared_ptr& mapContext, const QMapLibre::CustomLayerRenderParameters&) final; void Deinitialize() final; bool RunMousePicking(const std::shared_ptr& mapContext, const QMapLibre::CustomLayerRenderParameters& params, const QPointF& mouseLocalPos, const QPointF& mouseGlobalPos, const glm::vec2& mouseCoords, const common::Coordinate& mouseGeoCoords, std::shared_ptr& eventHandler) final; public slots: void UpdateSweepTimeNextFrame(); private: class Impl; std::unique_ptr p; }; } // namespace scwx::qt::map