Blame |
Last modification |
View Log
| RSS feed
/***************************************************************************
* Copyright (C) 2009 by Manuel Schrape *
* manuel.schrape@gmx.de *
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the *
* Free Software Foundation, Inc., *
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
#ifndef INPUT_TCP_H
#define INPUT_TCP_H
#include <QObject>
#include <QTcpServer>
#include <QTcpSocket>
#include <QTimer>
#include <QStringList>
#include "Input.h"
class Input_TCP : public Input
{
Q_OBJECT
public:
void Init();
bool Open(set_Input s_Input);
bool IsOpen();
bool Close();
void send_Data(QString t_Data, int ID = 0);
void send_RawData(char *t_Data);
void stop_Resend(int ID);
eMode Mode();
private:
// TCP Server und Socket.
QTcpServer *TCP_Server;
QTcpSocket *TCP_Socket;
QTimer *Timer;
bool b_Open;
s_Resend Confirm[MAX_Confirm];
QString s_Buffer;
private slots:
// void slot_newDataReceived(const QByteArray &dataReceived);
void slot_TCP_Connected();
void slot_TCP_Disconnect();
void slot_TCP_ReadLine();
void slot_TCP_Error(QAbstractSocket::SocketError Error);
void slot_Timer();
signals:
void sig_NewData(QString);
void sig_Disconnected(int);
void sig_Connected();
};
#endif // INPUT_TCP_H