hyperion.ng
BoblightClientConnection.h
1 #pragma once
2 
3 // Qt includes
4 #include <QByteArray>
5 #include <QTcpSocket>
6 #include <QLocale>
7 
8 // utils includes
9 #include <utils/Logger.h>
10 #include <utils/ColorRgb.h>
11 
12 class ImageProcessor;
13 class Hyperion;
14 
18 class BoblightClientConnection : public QObject
19 {
20  Q_OBJECT
21 
22 public:
28  BoblightClientConnection(Hyperion* hyperion, QTcpSocket * socket, const int priority);
29 
34 
35 signals:
40  void connectionClosed(BoblightClientConnection * connection);
41 
42 private slots:
46  void readData();
47 
51  void socketClosed();
52 
53 private:
59  void handleMessage(const QString &message);
60 
66  void sendMessage(const QByteArray &message);
67 
71  void sendLightMessage();
72 
73 private:
75  QLocale _locale;
76 
78  QTcpSocket * _socket;
79 
81  ImageProcessor * _imageProcessor;
82 
84  Hyperion * _hyperion;
85 
87  QByteArray _receiveBuffer;
88 
90  int _priority;
91 
93  std::vector<ColorRgb> _ledColors;
94 
96  Logger * _log;
97 
99  QString _clientAddress;
100 };
Definition: Logger.h:32
The main class of Hyperion.
Definition: Hyperion.h:57
Provide utility methods for Hyperion class.
Definition: BlackBorderDetector.h:7
The Connection object created by BoblightServer when a new connection is establshed.
Definition: BoblightClientConnection.h:18
~BoblightClientConnection()
Destructor.
Definition: BoblightClientConnection.cpp:45
The ImageProcessor translates an RGB-image to RGB-values for the leds.
Definition: ImageProcessor.h:26
void connectionClosed(BoblightClientConnection *connection)
Signal which is emitted when the connection is being closed.
BoblightClientConnection(Hyperion *hyperion, QTcpSocket *socket, const int priority)
Constructor.
Definition: BoblightClientConnection.cpp:25