#pragma once #include #include #include #include namespace scwx::qt::map { class AlertLayer : public DrawLayer { Q_OBJECT Q_DISABLE_COPY_MOVE(AlertLayer) public: explicit AlertLayer(const std::shared_ptr& glContext, scwx::awips::Phenomenon phenomenon); ~AlertLayer(); void Initialize(const std::shared_ptr& mapContext) final; void Render(const std::shared_ptr& mapContext, const QMapLibre::CustomLayerRenderParameters&) final; void Deinitialize() final; static void InitializeHandler(); signals: void AlertSelected(const types::TextEventKey& key); private: class Impl; std::unique_ptr p; }; } // namespace scwx::qt::map