Details coming soon.

This commit is contained in:
Paulchen-Panther
2018-12-27 23:11:32 +01:00
parent e3be03ea73
commit d762aa2f3e
186 changed files with 6156 additions and 5444 deletions

View File

@@ -10,31 +10,45 @@
#include <QList>
#include <QStringList>
#include <QHostAddress>
#include <QJsonObject>
#include <QJsonArray>
#include <QJsonDocument>
// Utils includes
#include <utils/ColorRgb.h>
class MessageForwarder
#include <utils/settings.h>
#include <utils/Logger.h>
class Hyperion;
class MessageForwarder : public QObject
{
Q_OBJECT
public:
struct JsonSlaveAddress {
QHostAddress addr;
quint16 port;
};
MessageForwarder();
MessageForwarder(Hyperion* hyperion, const QJsonDocument & config);
~MessageForwarder();
void addJsonSlave(QString slave);
void addProtoSlave(QString slave);
bool protoForwardingEnabled();
bool jsonForwardingEnabled();
bool forwardingEnabled() { return jsonForwardingEnabled() || protoForwardingEnabled(); };
QStringList getProtoSlaves();
QList<MessageForwarder::JsonSlaveAddress> getJsonSlaves();
QStringList getProtoSlaves() const { return _protoSlaves; };
QStringList getJsonSlaves() const { return _jsonSlaves; };
private slots:
///
/// @brief Handle settings update from Hyperion Settingsmanager emit or this constructor
/// @param type settingyType from enum
/// @param config configuration object
///
void handleSettingsUpdate(const settings::type& type, const QJsonDocument& config);
private:
QStringList _protoSlaves;
QList<MessageForwarder::JsonSlaveAddress> _jsonSlaves;
Hyperion* _hyperion;
Logger* _log;
QStringList _protoSlaves;
QStringList _jsonSlaves;
};