/** * @RDE_HEADER@ * SetAnnouncementProfile * $Id$ * $HeadURL$ * $Author$ * Created by Astrid Mueller, SGAS, 2017-11-30 */ #pragma once #include "icommand.h" #include #include #include #include #include namespace AudioVideoManagement { class IAvaComm; class IAvaCommandDoneObserver; class RtState; namespace AvaCommands { /** * @author Astrid Müller */ class SetAnnouncementProfile final : public ICommand { Q_OBJECT public: SetAnnouncementProfile(IAvaComm *comm, IAvaCommandDoneObserver *observer, RtState *rtState, const QString &menuDef, const QString &identityList, const QString &stateList); void send() override; QString debug() const override { return QLatin1String("SetAnnouncementProfile"); } const QVector &invalidNameList() const { return *m_invalidNames; } private slots: void onOk(); void onSumChannelStateReceived(AvaSumChannel); private: void done(); void onInvalidNameListReceived(QVector &&invalidNames); const QString m_menuDef; const QString m_identityList; const QString m_stateList; bool m_ok{false}; boost::optional> m_invalidNames; InvalidNameListCollector m_collector; IAvaComm *m_comm; IAvaCommandDoneObserver *m_observer; RtState *m_rtState; }; } // namespace AvaCommands } // namespace AudioVideoManagement