#ifndef MAINWINDOW_H #define MAINWINDOW_H #include #include #include #include #include #include #include #include #include "tmpackettoread.h" #include "wfpacket.h" #include "lfrxmlparser.h" #include class MainWindow : public QMainWindow { Q_OBJECT public: MainWindow(QWidget *parent = 0); ~MainWindow(); void displayNetworkInterfaces(); void initSocketStatesList(); // void preProcessPacket(TMPacketToRead *packet); unsigned char getPID(TMPacketToRead *packet); unsigned char getCAT(TMPacketToRead *packet); unsigned char getTYPE(TMPacketToRead *packet); unsigned char getSUBTYPE(TMPacketToRead *packet); unsigned int getLENGTH(TMPacketToRead *packet); unsigned int getCoarseTime(TMPacketToRead *packet); unsigned int getFineTime(TMPacketToRead *packet); unsigned int getSID(TMPacketToRead *packet, unsigned char pid, unsigned char cat, unsigned char typ, unsigned char sub); // void buildWFAndDisplay(TMPacketToRead *packet, WFPacket *wfPacket, unsigned char num_page); void buildWFAndDisplay_CWF_F3(TMPacketToRead *packet, WFPacket *wfPacket, unsigned char num_page); void buildWFAndDisplay_CWF_F3_light(TMPacketToRead *packet, WFPacket *wfPacket, unsigned char num_page); void buildWFAndDisplayBurst(TMPacketToRead *packet, WFPacket *wfPacket); void buildWFAndDisplaySBM1(TMPacketToRead *packet, WFPacket *wfPacket); void buildWFAndDisplaySBM1_alt(TMPacketToRead *packet, WFPacket *wfPacket); void buildWFAndDisplaySBM2(TMPacketToRead *packet, WFPacket *wfPacket); void buildSpectrumAndDisplayNORM_F0(TMPacketToRead *packet, SpectraPacket *spectraPacket); protected: void closeEvent(QCloseEvent *); private: void readSettings(); void writeSettings(); unsigned char echoBridgeIP0; unsigned char echoBridgeIP1; unsigned char echoBridgeIP2; unsigned char echoBridgeIP3; QByteArray dataArray; QList generalCCSDSPacketStore; QTcpServer *analyserSGSEServerTC; QTcpServer *analyserSGSEServerTM; QTcpSocket *socketTC; QTcpSocket *socketTM; QTcpSocket *socketEchoServer; unsigned int totalOfBytes; unsigned int totalOfPackets; QXmlSimpleReader xmlReader; QXmlInputSource *sourceTC; LFRXmlHandler *xmlHandler; LFRXmlParser *lfrXmlParser; QList socketStates; char *buffer; MainWindowUI *UI; LFRXmlWriter *lfrXmlWriter; WFPacket wfPacketNormal[4]; WFPacket wfPacketBurst; WFPacket wfPacketSBM1; WFPacket wfPacketSBM2; SpectraPacket *spectraPacketNormalSpectrumF0; bool parsingContinue; signals: void socketTMHasChanged(QTcpSocket *socket); public slots: void displayOnConsole(QString message); void listenOnTCTMPorts(); void testTCTMPorts(); void newConnectionOnTCServer(); void newConnectionOnTMServer(); void readDataOnTCPort(); void readDataOnTMPort(); void readDataOnSocketEchoServer(); void openEchoServer(); void socket_TMEcho_ServerHasChanged(); void processIncomingPacket(TMPacketToRead *packet); void resetStatistics(); void processPacketStore(); }; #endif // MAINWINDOW_H