source: flair-src/trunk/tools/FlairGCS/src/UdtSocket.h@ 470

Last change on this file since 470 was 399, checked in by Sanahuja Guillaume, 4 years ago

change color of status bar in gcs if high bandwidth usage is detected

File size: 1.2 KB
Line 
1// %flair:license{
2// This file is part of the Flair framework distributed under the
3// CECILL-C License, Version 1.0.
4// %flair:license}
5#ifndef UDTSOCKET_H
6#define UDTSOCKET_H
7
8#include <udt.h>
9#include <QObject>
10#include <QTimer>
11
12class file_ui;
13
14class UdtSocket : public QObject {
15 Q_OBJECT
16
17public:
18 UdtSocket(UDTSOCKET socket,QString name);
19 ~UdtSocket();
20 void setName(QString name);
21 QString getUDTStats();
22
23private:
24 UDTSOCKET socket;
25 bool stop,destroySocket;
26 QTimer *heartbeat_timer,*udtstats_timer;
27 QString name;
28 static int uncompressBuffer(char *in, ssize_t in_size, char *out,ssize_t *out_size);
29 enum SocketType { unknown, gui, log };
30 SocketType socketType;
31 unsigned int total_received;
32 QString stats;
33 unsigned int pktSndLossTotal;
34 unsigned int lastpktRecvTotal;
35
36
37signals:
38 void dataReady(char *, int size);
39 void newFileUI(UDTSOCKET socket);
40 void newConnectionLayout(QString name);
41 void UDTStats(QString stats,QString stylesheet,bool loosingPackets);
42
43public slots:
44 void receiveData(void);
45 void kill(void);
46 qint64 write(const char *buf, qint64 size,int ttl=-1,bool inOrder=true);
47
48private slots:
49 void heartbeat(void);
50 void getUTDStats(void);
51};
52
53#endif // UDTSOCKET_H
Note: See TracBrowser for help on using the repository browser.