You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

csocketmanager.h 2.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. /***************************************************************************
  2. * Copyright (C) 2008 by Oliver Groß *
  3. * z.o.gross@gmx.de *
  4. * *
  5. * This program is free software; you can redistribute it and/or modify *
  6. * it under the terms of the GNU General Public License as published by *
  7. * the Free Software Foundation; either version 2 of the License, or *
  8. * (at your option) any later version. *
  9. * *
  10. * This program is distributed in the hope that it will be useful, *
  11. * but WITHOUT ANY WARRANTY; without even the implied warranty of *
  12. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
  13. * GNU General Public License for more details. *
  14. * *
  15. * You should have received a copy of the GNU General Public License *
  16. * along with this program; if not, write to the *
  17. * Free Software Foundation, Inc., *
  18. * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
  19. ***************************************************************************/
  20. #ifndef QFTRANSCSOCKETMANAGER_H
  21. #define QFTRANSCSOCKETMANAGER_H
  22. #include <QObject>
  23. class QTcpSocket;
  24. class QTcpServer;
  25. namespace qftrans {
  26. class CWorker;
  27. /**
  28. @author Oliver Groß <z.o.gross@gmx.de>
  29. */
  30. class CSocketManager : public QObject {
  31. Q_OBJECT
  32. public:
  33. CSocketManager(QObject * parent = 0);
  34. ~CSocketManager();
  35. CWorker * worker() { return m_Worker; }
  36. public slots:
  37. void setup(bool server, quint16 port, QString & host);
  38. /* void connectToPeer();*/
  39. // void disconnectFromPeer();
  40. signals:
  41. void connectionChanged(bool connected);
  42. protected:
  43. // bool m_ActAsServer;
  44. QString m_Host;
  45. quint16 m_Port;
  46. QTcpServer * m_Server;
  47. QTcpSocket * m_Socket;
  48. CWorker * m_Worker;
  49. protected slots:
  50. void handleServerConnected();
  51. void handleClientConnected();
  52. void handleDisconnected();
  53. };
  54. }
  55. #endif