0,0 → 1,152 |
/*************************************************************************** |
* 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 DLG_MAIN_H |
#define DLG_MAIN_H |
|
#include <QtGui/QMainWindow> |
#include <QTcpServer> |
#include <QTcpSocket> |
#include <QProcess> |
#include <QDir> |
|
#include "ui_dlg_Main.h" |
|
#include "dlg_Preferences.h" |
#include "dlg_Terminal.h" |
|
#include "../Defines.h" |
#include "../TypeDefs.h" |
|
#include "../Classes/cSettings.h" |
|
#include "../../Global/Kopter.h" |
#include "../../Global/Class_Input/Input.h" |
#include "../../Global/Class_Input/Input_TTY.h" |
#include "../../Global/Class_Input/Input_TCP.h" |
#include "../../Global/Class_HandlerMK/HandlerMK.h" |
#include "../../Global/Class_HandlerIP/HandlerIP.h" |
#include "../../Global/Class_SerialPort/ManageSerialPort.h" |
|
class dlg_Main : public QMainWindow, public Ui::dlg_Main_UI |
{ |
Q_OBJECT |
|
public: |
dlg_Main(); |
~dlg_Main(); |
void set_ARGV(char *Programm); |
|
private: |
QString QMK_Dir; |
|
// Input Device. |
Input *o_Input; |
Input *o_Output; |
|
set_Input s_Input; |
set_Input s_Output; |
|
|
// Settings-Object |
cSettings *o_Settings; |
|
dlg_Terminal *f_Terminal; |
|
QProcess *o_cScope; |
QProcess *o_cSettings; |
QProcess *o_cMaps; |
QProcess *o_cVoice; |
QProcess *o_cLogger; |
|
// TCP Server und Socket. |
QTcpServer *TCP_Server; |
QTcpSocket *o_TCP[DEV_IP_MAX]; |
QString s_Buffer; |
|
//Liste alle IP-Verbindungen und deren Parameter. |
int Connect_Count; |
sConnection Con_Server[DEV_IP_MAX]; |
sConnection Con_Output; |
|
QListWidgetItem *Item[DEV_IP_MAX]; |
|
s_Hardware VersionInfo; |
|
char c_Data[150]; |
|
// Programm-Initialisirungen |
void init_GUI(); |
void init_Connections(); |
|
// IP-Ports initialisieren |
bool init_TCP(); |
|
// Einkommende Datenpackete zerlegen. |
void parse_Input_Data(QString t_Data); |
|
// Einkommende Datenpackete weiterleiten |
void route_Input_Data(QString t_Data); |
|
void parse_TCP_Server_Data(QString t_Data, int t_ID); |
void parse_TCP_Input_Data(QString t_Data); |
void parse_TCP_Output_Data(QString t_Data); |
|
// Freies IP-Socket ermitteln |
int get_FreeSocket(); |
|
// Daten aufs IP-Interface senden. |
void send_TCP(QTcpSocket *Socket, QString Data); |
|
void show_Terminal(int t_Typ, QString t_Data); |
|
private slots: |
void slot_ac_About(); |
void slot_ac_Server(); |
|
// Connect-Button |
void slot_btn_Connect(); |
|
void slot_btn_cScope(); |
void slot_btn_cSettings(); |
void slot_btn_cMaps(); |
void slot_btn_cVoice(); |
void slot_btn_cLogger(); |
|
void slot_btn_Terminal(); |
void slot_btn_ConnectServer(); |
void slot_btn_Debug(); |
|
void slot_rb_Hardware(); |
|
// Einkommende Datenpackete. |
void slot_Input_Data(QString t_Data); |
void slot_Input_Disconnected(int Error); |
void slot_Input_Connected(); |
|
void slot_TCP_NewConnection(); |
void slot_TCP_Disconnect(); |
void slot_TCP_Read(); |
|
void slot_Output_Data(QString t_Data); |
void slot_Output_Disconnected(int Error); |
void slot_Output_Connected(); |
|
}; |
|
#endif // DLG_MAIN_H |