49 lines
1.5 KiB
C++
Executable File
49 lines
1.5 KiB
C++
Executable File
/**
|
|
* @RDE_HEADER@
|
|
* GUI Plugin for SituationReplay (Control) (Interface for access from other Plugins)
|
|
* $Id$
|
|
* $HeadURL$
|
|
* $Author$
|
|
* Created by Patric Karwat, SLSE, 2016-07-27
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <PluginInterfaces/topic_replay_interface.h>
|
|
#include <TopicEditorBase/topic_editor_interface.h>
|
|
|
|
#include <QPointer>
|
|
|
|
namespace MarkerManagement
|
|
{
|
|
class MarkerManagementApplyFilter;
|
|
}
|
|
namespace SituationMap
|
|
{
|
|
class ForeignGuiInterface;
|
|
}
|
|
|
|
|
|
namespace SituationReplay
|
|
{
|
|
|
|
// TODO: mv TR Ifc to actual plugin !
|
|
class ForeignGuiInterface : public TopicReplay::Factory, public TopicEditorBase::Interface
|
|
{
|
|
public:
|
|
ForeignGuiInterface() = default;
|
|
virtual ~ForeignGuiInterface() = default;
|
|
|
|
virtual bool startReplay(const qint64 start, const qint64 end = 0 /* infinite */, const double speed = 1.0, const QJsonObject &attributes = QJsonObject()) = 0;
|
|
virtual void pauseReplay() = 0;
|
|
virtual void stopReplay() = 0;
|
|
|
|
// for Topic Editor in Script Editor to start a replay in Essentials View instead of the Script Editor
|
|
virtual void setEssentialsViewInterfaces(ForeignGuiInterface *srpIfc, SituationMap::ForeignGuiInterface *sitMapIfc) = 0;
|
|
virtual void setSitMapIfc(SituationMap::ForeignGuiInterface *sitMapIfc) = 0;
|
|
virtual QWidget *createControlWidget(bool useExistingReplay) = 0;
|
|
virtual void setApplyFilter(const QPointer<MarkerManagement::MarkerManagementApplyFilter> &applyFilter) = 0; // for the ScriptEditor's Essential Viewer
|
|
};
|
|
|
|
} // namespace SituationReplay
|