/** * @RDE_HEADER@ * AreaEffectSimulation - Effector * $Id$ * $HeadURL$ * $Author$ * Created by Hanna E. Rathje, ESZS, 2026-02-18 */ #pragma once #include #include namespace Ui { class AesEffector; } namespace AreaEffectSimulation { class AesEffector : public QWidget { Q_OBJECT public: explicit AesEffector(QWidget *parent = nullptr); ~AesEffector(); bool init(int effectorId, const QString &verEin, const QString &name, AreaEffectSimulation::AesEffectorState state); AreaEffectSimulation::AesEffectorState getState() const; void setState(const AreaEffectSimulation::AesEffectorState &newState); void setStateButtonVisible(bool visible); int effectorId() const; private slots: void onPbNextStateClicked(); signals: void reportFired(); void reportReadyToFire(); void fire(); private: Ui::AesEffector *m_ui; int m_effectorId; AreaEffectSimulation::AesEffectorState m_state; }; } // namespace AreaEffectSimulation