1 #ifndef COMMUNICATIONMANAGER_H
2 #define COMMUNICATIONMANAGER_H
22 #include <QJsonDocument>
54 explicit CommandManager(
bool p_bIsActive =
true, QObject *parent = 0);
56 explicit CommandManager(
const QByteArray &p_qByteArrayJsonDoc,
bool p_bIsActive =
true, QObject *parent = 0);
58 explicit CommandManager(
const QJsonDocument &p_jsonDoc,
bool p_bIsActive =
true, QObject *parent = 0);
74 inline QMap<QString, Command>& commandMap();
84 inline bool hasCommand(
const QString &p_sCommand)
const;
93 void insert(
const QJsonDocument &p_jsonDocument);
102 void insert(
const QString &p_sKey,
const QString &p_sDescription);
111 void insert(
const QString &p_sKey,
const Command &p_command);
119 inline bool isActive()
const;
127 inline void setStatus(
bool status);
135 virtual void update(
Subject* p_pSubject);
145 Command& operator[] (
const QString &key);
155 const Command operator[] (
const QString &key)
const;
166 QJsonDocument m_jsonDocumentOrigin;
168 QMetaObject::Connection m_conReplyChannel;
170 QMap<QString, Command> m_qMapCommands;
173 void commandMapChanged();
181 void triggered(
Command p_command);
190 void response(QString p_sReply,
Command p_command);
200 return m_qMapCommands;
208 return m_qMapCommands.contains(p_sCommand);
224 m_bIsActive = status;
229 #endif // COMMUNICATIONMANAGER_H
void setStatus(bool status)
Declaration of the Command Class.
#define RTCOMMANDSHARED_EXPORT
Declaration of the CommandParser Class.
The IObserver interface provides the base class of every observer of the observer design pattern...
Contains declarations of the observer design pattern: Subject class and IObserver interface...
The Subject class provides the base class of every subject of the observer design pattern...
RtCommand library export/import macros.
QMap< QString, Command > & commandMap()
bool hasCommand(const QString &p_sCommand) const