Files
qt5-legatus-legacy/Lts/Services/AudioVideoManagement/iava_command_done_observer.h
T
2026-08-13 18:33:10 +02:00

63 lines
1.4 KiB
C++
Executable File

/**
* @RDE_HEADER@
* IAvaControl
* $Id$
* $HeadURL$
* $Author$
* Created by Christian Fröbel, NLSE, 2018-01-26
*/
#pragma once
namespace AudioVideoManagement
{
class ICommand;
namespace AvaCommands
{
class ChooseStream;
class GetStreamList;
class QueryTimeline;
class GetElokaList;
class QueryEloka;
class SetRtProfileBase;
class SetAnnouncementProfile;
class SetVideoProfile;
class SetScript;
class StartScript;
}
/**
* This interface is needed in order to mock AvaControl in UnitTests.
*
* @author Christian Fröbel
*/
class IAvaCommandDoneObserver
{
public:
virtual ~IAvaCommandDoneObserver() = default;
virtual void done(ICommand *cmd) = 0;
virtual void done(AvaCommands::ChooseStream *cmd) = 0;
virtual void done(AvaCommands::GetStreamList *cmd) = 0;
virtual void done(AvaCommands::QueryTimeline *cmd) = 0;
virtual void done(AvaCommands::GetElokaList *cmd) = 0;
virtual void done(AvaCommands::QueryEloka *cmd) = 0;
virtual void done(AvaCommands::SetRtProfileBase *cmd) = 0;
virtual void done(AvaCommands::SetAnnouncementProfile *cmd) = 0;
virtual void done(AvaCommands::SetVideoProfile *cmd) = 0;
virtual void done(AvaCommands::SetScript *cmd) = 0;
virtual void done(AvaCommands::StartScript *cmd) = 0;
virtual void failed(ICommand *cmd) = 0;
/**
* Tell the observer that the command is not done yet but still alive.
*/
virtual void alive(ICommand *cmd) = 0;
};
} // namespace AudioVideoManagement