48 lines
1.2 KiB
C++
Executable File
48 lines
1.2 KiB
C++
Executable File
/**
|
|
* @RDE_HEADER@
|
|
* Data Plugin Interface for OperatorManagement (Interface for access from other Plugins)
|
|
* $Id$
|
|
* $HeadURL$
|
|
* $Author$
|
|
* Created by Christian Ehrlicher, SLSE, 2016-02-29
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <PluginInterfaces/data_plugin_interface.h>
|
|
#include <OperatorManagement/opm_dtc.h>
|
|
#include <OperatorManagement/opm_ftc.h>
|
|
|
|
namespace OperatorManagement
|
|
{
|
|
class ForeignDataInterface;
|
|
|
|
/**
|
|
* @brief The DataInterface class provides the Topics Clients only for the GUI Plugins
|
|
*/
|
|
class DataInterface : public DataPluginBase::Interface
|
|
{
|
|
public:
|
|
using DataPluginBase::Interface::Interface;
|
|
|
|
virtual std::shared_ptr<OperatorManagement::Interface::Dtc> getDtc() = 0;
|
|
virtual std::shared_ptr<OperatorManagement::Interface::Ftc> getFtc() = 0;
|
|
virtual std::shared_ptr<ForeignDataInterface> getForeignDataInterface() = 0;
|
|
};
|
|
|
|
/**
|
|
* @brief The ForeignInterface class provides methods and signals for foreign plugins, that need
|
|
* access to the data of this DataPlugin
|
|
*/
|
|
class ForeignDataInterface
|
|
{
|
|
public:
|
|
ForeignDataInterface() = default;
|
|
virtual ~ForeignDataInterface() = default;
|
|
|
|
virtual void onSendKeepAlive() = 0;
|
|
};
|
|
|
|
} // namespace OperatorManagement
|
|
|