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

Last change on this file since 234 was 234, checked in by Sanahuja Guillaume, 3 years ago

create file oscket only when necessary

File size: 1.1 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
34signals:
35  void dataReady(char *, int size);
36  void newFileUI(UDTSOCKET socket);
37  void newConnectionLayout(QString name);
38  void UDTStats(QString stats);
39
40public slots:
41  void receiveData(void);
42  void kill(void);
43  qint64 write(const char *buf, qint64 size,int ttl=-1,bool inOrder=true);
44 
45private slots:
46  void heartbeat(void);
47  void getUTDStats(void);
48};
49
50#endif // UDTSOCKET_H
Note: See TracBrowser for help on using the repository browser.