42#ifndef COMMUNICATIONMANAGER_H
43#define COMMUNICATIONMANAGER_H
60#include <QJsonDocument>
90 explicit CommandManager(
bool p_bIsActive =
true, QObject* parent = 0);
92 explicit CommandManager(
const QByteArray& p_qByteArrayJsonDoc,
bool p_bIsActive =
true, QObject* parent = 0);
94 explicit CommandManager(
const QJsonDocument& p_jsonDoc,
bool p_bIsActive =
true, QObject* parent = 0);
120 inline bool hasCommand(
const QString& p_sCommand)
const;
129 void insert(
const QJsonDocument& p_jsonDocument);
140 void insert(
const QString& p_sKey,
const QString& p_sDescription);
149 void insert(
const QString& p_sKey,
const Command& p_command);
204 QJsonDocument m_jsonDocumentOrigin;
206 QMetaObject::Connection m_conReplyChannel;
208 QMap<QString, Command> m_qMapCommands;
237 return m_qMapCommands;
244 return m_qMapCommands.contains(p_sCommand);
258 m_bIsActive = status;
Export macros, build-info entry points and namespace anchor for the COMLIB communication library.
Front-end tokeniser that turns incoming JSON or CLI payloads into COMLIB::RawCommand objects and noti...
Typed, parameter-bearing command object that round-trips between mne-cpp clients and mne_rt_server.
Classical GoF observer pattern (Subject + IObserver) used by MNE-CPP's non-QObject model classes.
Real-time client/server communication primitives for talking to mne_rt_server.
Named, parameterised command exchanged with mne_rt_server; supports both JSON and CLI serialisation.
void response(QString p_sReply, Command p_command)
void setStatus(bool status)
virtual void update(UTILSLIB::Subject *p_pSubject)
QMap< QString, Command > & commandMap()
void triggered(Command p_command)
bool hasCommand(const QString &p_sCommand) const
CommandManager(bool p_bIsActive=true, QObject *parent=0)
Command & operator[](const QString &key)
void insert(const QJsonDocument &p_jsonDocument)
The IObserver interface provides the base class of every observer of the observer design pattern.
The Subject class provides the base class of every subject of the observer design pattern.