IOT  0.5
I Only Think
CegTcpServer.h
Go to the documentation of this file.
00001 // -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*-
00002 
00003 /* IOT Copyright (C) 2010 CEG development team
00004  *
00005  * This program is free software; you can redistribute it and/or modify
00006  * it under the terms of the GNU General Public License version 2
00007  * as published by the Free Software Foundation.
00008  *
00009  * This program is distributed in the hope that it will be useful,
00010  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00011  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00012  * GNU General Public License for more details.
00013  *
00014  * You should have received a copy of the GNU General Public License
00015  * along with this program; if not, write to the Free Software
00016  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
00017  *
00018  * Authors: CEG <ceg@ionlythink.com>, http://www.ionlythink.com
00019  */
00020 
00021 #ifndef CEGTCPSERVER_HPP
00022 #define CEGTCPSERVER_HPP
00023 
00024 #include <QObject>
00025 
00026 class QTcpServer;
00027 class QTcpSocket;
00028 class MainController;
00029 class IAction;
00030 
00031 class CegTcpServer : public QObject
00032 {
00033     Q_OBJECT
00034 
00035 public:
00036     CegTcpServer(MainController& lm);
00037     ~CegTcpServer();
00038 
00039 private:
00040     void        launch();
00041     void        parseLines(void);
00042     void        interpretLine(QString &line);
00043 
00044 signals:
00045     void actionEmitted(IAction &); //signal d'action
00046 
00047 private slots:
00048     void        _connect();
00049     void        _disconnect();
00050     void        _readData();
00051 
00052 private:
00053     QTcpServer  *_tcpServer;
00054     QTcpSocket  *_client;
00055     QString     _buffer;
00056 };
00057 
00058 #endif // CEGTCPSERVER_HPP
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator