#pragma once #include #include #include namespace MarkerManagement { class MarkerManagementApplyFilter; } namespace SituationMap { class ForeignGuiInterface; } namespace SituationReplay { class ForeignGuiInterface : public TopicReplay::Factory, public TopicEditorBase::Interface { public: ForeignGuiInterface() = default; virtual ~ForeignGuiInterface() = default; virtual bool startReplay(const qint64 start, const qint64 end = 0 , const double speed = 1.0, const QJsonObject &attributes = QJsonObject()) = 0; virtual void pauseReplay() = 0; virtual void stopReplay() = 0; 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 &applyFilter) = 0; }; }