OpendTect  6.6
qtcpsocketcomm.h
Go to the documentation of this file.
1 #ifndef qtcpsocketcomm_h
2 #define qtcpsocketcomm_h
3 
4 /*+
5 ________________________________________________________________________
6 
7  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
8  Author: Nanne Hemstra
9  Date: March 2009
10  RCS: $Id$
11 ________________________________________________________________________
12 
13 -*/
14 
15 #include <QTcpSocket>
16 #include <QLocalSocket>
17 #include "netsocket.h"
18 
19 /*\brief QTcpSocket communication class
20 
21  Internal object, to hide Qt's signal/slot mechanism.
22 */
23 
24 QT_BEGIN_NAMESPACE
25 
26 class QTcpSocketComm : public QObject
27 {
28  Q_OBJECT
29  friend class Network::Socket;
30 
31  void disconnect() { netsocket_ = 0; }
32 
33 protected:
34 
35 QTcpSocketComm( QTcpSocket* qtcpsocket, Network::Socket* netsocket )
36  : qtcpsocket_(qtcpsocket)
37  , netsocket_(netsocket)
38 {
39  connect( qtcpsocket, SIGNAL(disconnected()), this, SLOT(trigDisconnect()));
40  connect( qtcpsocket, SIGNAL(readyRead()), this, SLOT(trigReadyRead()) );
41 }
42 
43 
44 QTcpSocketComm( QLocalSocket* qlocalsocket, Network::Socket* netsocket )
45  : qlocalsocket_(qlocalsocket)
46  , netsocket_(netsocket)
47 {
48  connect( qlocalsocket, SIGNAL(disconnected()), this,
49  SLOT(trigDisconnect()) );
50  connect( qlocalsocket, SIGNAL(readyRead()), this, SLOT(trigReadyRead()) );
51 }
52 
53 private slots:
54 
56 {
57  if ( netsocket_ )
58  netsocket_->disconnected.trigger( *netsocket_ );
59 }
60 
61 
63 {
64  if ( netsocket_ )
65  netsocket_->readyRead.trigger( *netsocket_ );
66 }
67 
68 private:
69 
70  QTcpSocket* qtcpsocket_ = nullptr;
71  QLocalSocket* qlocalsocket_ = nullptr;
73 
74 };
75 
76 QT_END_NAMESPACE
77 
78 #endif
QTcpSocketComm::qtcpsocket_
QTcpSocket * qtcpsocket_
Definition: qtcpsocketcomm.h:70
netsocket.h
QTcpSocketComm::QTcpSocketComm
QTcpSocketComm(QLocalSocket *qlocalsocket, Network::Socket *netsocket)
Definition: qtcpsocketcomm.h:44
QTcpSocketComm::qlocalsocket_
QLocalSocket * qlocalsocket_
Definition: qtcpsocketcomm.h:71
QTcpSocketComm::QTcpSocketComm
QTcpSocketComm(QTcpSocket *qtcpsocket, Network::Socket *netsocket)
Definition: qtcpsocketcomm.h:35
QTcpSocketComm::disconnect
void disconnect()
Definition: qtcpsocketcomm.h:31
QTcpSocketComm::trigReadyRead
void trigReadyRead()
Definition: qtcpsocketcomm.h:62
QTcpSocketComm::Socket
friend class Network::Socket
Definition: qtcpsocketcomm.h:29
QTcpSocketComm::netsocket_
Network::Socket * netsocket_
Definition: qtcpsocketcomm.h:72
QTcpSocketComm::trigDisconnect
void trigDisconnect()
Definition: qtcpsocketcomm.h:55
QTcpSocketComm
Definition: qtcpsocketcomm.h:27

Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B.V. 1995-2021