/*------------------------------------------------------------------------------ -- This file is a part of the LPPMON Software -- Copyright (C) 20011, Laboratory of Plasma Physics - CNRS -- -- 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 3 of the License, or -- (at your option) any later version. -- -- 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 -------------------------------------------------------------------------------*/ /*-- Author : Paul Leroy -- Mail : paul.leroy@lpp.polytechnique.fr ----------------------------------------------------------------------------*/ #ifndef RMAPPLUGINUI_H #define RMAPPLUGINUI_H #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include "qipdialogbox.h" #include #include #include #include "spectralmatricesdmasimulator.h" #include class rmapPluginUI : public QWidget { Q_OBJECT public: explicit rmapPluginUI(QWidget *parent = 0); ~rmapPluginUI(); QPushButton* rmapOpenCommunicationButton; QPushButton* rmapCloseCommunicationButton; QPushButton* logFileChooseButton; QPushButton* gresbStatusQueryRetryButton; QPushButton* gresbStatusQueryAbortButton; QPushButton* sendCCSDSCommandButton; QPushButton* send_TC_LFR_UPDATE_TIME_Button; QPushButton* reset_TC_LFR_UPDATE_TIME_Button; QPushButton* clearConsoleButton; QSpinBox* gresbVirtualLinkSpinBox; QSpinBox* spwLinkSpinBox; QSpinBox* rmapSourceLogicalAddressSpinBox; QSpinBox* rmapTargetLogicalAddressSpinBox; QSpinBox* CCSDSTargetLogicalAddressSpinBox; QIPDialogBox* gresbBridgeIPDialogBox; QCheckBox *logEnableCheckBox; QCheckBox *RMAP_write_verify; QCheckBox *RMAP_write_reply; QLabel* rmapSendStateLabel; QLabel* rmapReceiveStateLabel; QLabel* gresbStatusQueryLabel; QLabel* gresbStatusQueryDialogLabel; QLabel* sendCCSDSCommandLabel; QDialog* gresbStatusQueryDialog; gresbStatusEnquiry* spwLinkStatusEnquiry; SpectralMatricesDMASimulator *spectralMatricesDMASimulator; QTextEdit* console; StarDundee *starDundee; bool islogfileenable(); void appendToLogFile(const QString & text); void closeEvent(QCloseEvent *event); RMAP_command_codes getCommandCode(); public slots: void setConnected(bool connected); void connectPort(); void chooseLogFile(); void logFileEnDisable(int state); signals: void connectPortsig(QString PortName,int baudrate); void setLogFileName(QString FileName); private: QLabel* gresbBridgeIPLabel; QLabel* gresbVirtualLinkLabel; QLabel* spwLinkLabel; QLabel* rmapSourceLogicalAddressLabel; QLabel* rmapTargetLogicalAddressLabel; QLabel *logFileName; QVBoxLayout* mainLayout; QGridLayout* connectionLayout; QVBoxLayout* ccsdsLayout; QVBoxLayout* consoleLayout; QGridLayout* gresbStatusQueryDialogLayout; QTabWidget* spwTabWidget; QFile* logFile; QTextStream* logFileStrm; bool logFileEn; }; #endif // RMAPPLUGINUI_H