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

Last change on this file was 399, checked in by Sanahuja Guillaume, 7 months 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.