Torc  0.1
torcinputs.h
Go to the documentation of this file.
1 #ifndef TORCINPUTS_H
2 #define TORCINPUTS_H
3 
4 // Qt
5 #include <QList>
6 #include <QMutex>
7 
8 // Torc
9 #include "torchttpservice.h"
10 #include "torcinput.h"
11 #include "torccentral.h"
12 
13 class TorcInputs final : public QObject, public TorcHTTPService, public TorcDeviceHandler
14 {
15  Q_OBJECT
16  Q_CLASSINFO("Version", "1.0.0")
17  Q_CLASSINFO("GetInputList", "type=inputs")
18  Q_PROPERTY(QVariantMap inputList READ GetInputList() NOTIFY InputsChanged())
19  Q_PROPERTY(QStringList inputTypes READ GetInputTypes() CONSTANT)
20 
21  public:
22  static TorcInputs* gInputs;
23 
24  public:
25  TorcInputs();
26  ~TorcInputs() = default;
27 
28  void Graph (QByteArray* Data);
29  QString GetUIName (void) override;
30 
31  // TorcDeviceHandler
32  void Create (const QVariantMap &Details) override;
33  void Destroy (void) override;
34 
35  public slots:
36  // TorcHTTPService
37  void SubscriberDeleted (QObject *Subscriber);
38 
39  QVariantMap GetInputList (void);
40  QStringList GetInputTypes (void);
41 
42  signals:
43  void InputsChanged (void);
44 
45  public:
46  void AddInput (TorcInput *Input);
47  void RemoveInput (TorcInput *Input);
48 
49  private:
50  QList<TorcInput*> inputList;
51  QStringList inputTypes;
52  QMap<QString,TorcInput*> m_createdInputs;
53 };
54 
55 #endif // TORCINPUTS_H
void AddInput(TorcInput *Input)
Definition: torcinputs.cpp:160
QVariantMap inputList
Definition: torcinputs.h:18
QStringList GetInputTypes(void)
Definition: torcinputs.cpp:155
void Create(const QVariantMap &Details) override
Definition: torcinputs.cpp:196
QVariantMap GetInputList(void)
Return a map of known inputs.
Definition: torcinputs.cpp:136
void SubscriberDeleted(QObject *Subscriber)
Definition: torcinputs.cpp:125
void RemoveInput(TorcInput *Input)
Definition: torcinputs.cpp:178
QString GetUIName(void) override
Definition: torcinputs.cpp:87
void Graph(QByteArray *Data)
Definition: torcinputs.cpp:92
void Destroy(void) override
Definition: torcinputs.cpp:271
void InputsChanged(void)