80 lines
1.4 KiB
C++
80 lines
1.4 KiB
C++
// **************************************************************************
|
|
//
|
|
// (C) Copyright 2009 Swiss SIMTEC AG
|
|
//
|
|
// **************************************************************************
|
|
//
|
|
// $HeadURL$
|
|
// $LastChangedBy$
|
|
// $LastChangedDate$
|
|
// $LastChangedRevision$
|
|
//
|
|
// **************************************************************************
|
|
|
|
#pragma once
|
|
|
|
#include <QtCore/QObject>
|
|
#include "logger.h"
|
|
|
|
class QTcpSocket;
|
|
|
|
namespace PrtCnv
|
|
{
|
|
class PrtCnvInjectionThread;
|
|
/**
|
|
* Used for receiving the socket signals
|
|
*
|
|
* @author alois.wismer
|
|
* @version 1.0
|
|
* @created 06-Aug-2010 16:41:44
|
|
*/
|
|
class PrtCnvInjectionSocket : public QObject
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
|
|
PrtCnvInjectionSocket();
|
|
~PrtCnvInjectionSocket();
|
|
|
|
/**
|
|
*
|
|
* @param a_socket
|
|
* @param a_server
|
|
*/
|
|
void setSocket(QTcpSocket* a_socket, PrtCnvInjectionThread* a_server);
|
|
|
|
protected:
|
|
QTcpSocket *m_Socket;
|
|
|
|
PrtCnvInjectionThread *m_Server;
|
|
|
|
/**
|
|
* The logger object
|
|
*/
|
|
NGL::INGLLogger &m_logger;
|
|
|
|
protected slots:
|
|
/**
|
|
* Disconnects a TCP-client
|
|
*/
|
|
void disconnectClient();
|
|
|
|
/**
|
|
* Reads in TCP-data and handles them
|
|
*/
|
|
void processInputData();
|
|
|
|
|
|
public:
|
|
signals:
|
|
/**
|
|
*
|
|
* @param a_injectSocket
|
|
*/
|
|
void disconnected(PrtCnvInjectionSocket* a_injectSocket);
|
|
|
|
|
|
};
|
|
|
|
}
|