diff --git a/SocExplorer_Plugins.pro b/SocExplorer_Plugins.pro --- a/SocExplorer_Plugins.pro +++ b/SocExplorer_Plugins.pro @@ -8,6 +8,7 @@ SUBDIRS = \ APBUARTPLUGIN \ dsu3plugin \ genericrwplugin \ - memctrlrplugin + memctrlrplugin \ + memcheckplugin unix:SUBDIRS += spwplugin diff --git a/ahbuartplugin/ahbuartplugin.cpp b/ahbuartplugin/ahbuartplugin.cpp --- a/ahbuartplugin/ahbuartplugin.cpp +++ b/ahbuartplugin/ahbuartplugin.cpp @@ -47,6 +47,8 @@ ahbuartplugin::ahbuartplugin(QWidget *pa QObject::connect(((ahbuartPywrapper*)this->pyObject),SIGNAL(ReadBytes(uint,uint)),this,SLOT(ReadBytes(uint,uint))); QObject::connect(((ahbuartPywrapper*)this->pyObject),SIGNAL(WriteBytes(uint,QList)),this,SLOT(WriteBytes(uint,QList))); QObject::connect(this->UI,SIGNAL(rescanPorts()),this,SLOT(updatePortList())); + QObject::connect(this,SIGNAL(addReadBytes(int)),this->UI,SLOT(addReadBytes(int))); + QObject::connect(this,SIGNAL(addWritenBytes(int)),this->UI,SLOT(addWritenBytes(int))); this->portListcompleter = NULL; this->scanDone = false; updatePortList(); @@ -147,7 +149,6 @@ void ahbuartplugin::connectPort(QString char test2[1024]; SAFEWRITE(test,1,timeout,2000,return); SAFEWRITE((test+1),1,timeout,2000,return); - APPENDTOLOG(QString("Flush port ")); rs232read(this->port,test2,512); int read = 0; for(int i=0;i<10;i++) @@ -235,8 +236,6 @@ unsigned int ahbuartplugin::Read(unsigne if((this->port!= badPortValue)||(this->port!=(rs232port_t)NULL)) { QMutexLocker lock(portMutex); -// if(!this->portMutex->tryLock()) -// return 0; if(!this->checkConnection()) { this->Connected = false; @@ -256,13 +255,11 @@ unsigned int ahbuartplugin::Read(unsigne CMD[2] = (char)((address>>16)&0xFF); CMD[3] = (char)((address>>8)&0xFF); CMD[4] = (char)((address)&0xFF); -// APENDTABLETOLOG(CMD,5,logmessage,"Write CMD : "); SAFEWRITE(CMD,5,timeout,1000,return 0); #ifdef WIN32 usleep(1000); #endif SAFEREAD(result+((cnt-count)*4),32*4,timeout,1000,return 0); -// APENDTABLETOLOG((result+((cnt-count)*4)),32*4,logmessage, QString("Get ") + QString::number(32*4) + " Bytes : "); count-=32; address+=32*4; if(cnt>128) @@ -288,7 +285,6 @@ unsigned int ahbuartplugin::Read(unsigne usleep(1000); #endif SAFEREAD(result+((cnt-count)*4),(count*4),timeout,1000,return 0); -// APENDTABLETOLOG((result+((cnt-count)*4)),(count*4),logmessage, QString("Get ") + QString::number(32*4) + " Bytes : "); } if(cnt>128) { @@ -307,8 +303,8 @@ unsigned int ahbuartplugin::Read(unsigne if(cnt>128) SocExplorerEngine::deleteProgressBar(progress); free(result); -// this->portMutex->unlock(); } + emit this->addReadBytes(read); return read/4; } @@ -322,8 +318,6 @@ unsigned int ahbuartplugin::Write(unsign if((this->port!= badPortValue)||(this->port!=(rs232port_t)NULL)) { QMutexLocker lock(portMutex); -// if(!this->portMutex->tryLock()) -// return 0; if(!this->checkConnection()) { emit this->activateSig(false); @@ -388,7 +382,7 @@ unsigned int ahbuartplugin::Write(unsign SocExplorerEngine::deleteProgressBar(progress); } free(CMD); -// this->portMutex->unlock(); + emit this->addWritenBytes(writen); return writen; } return 0; diff --git a/ahbuartplugin/ahbuartplugin.h b/ahbuartplugin/ahbuartplugin.h --- a/ahbuartplugin/ahbuartplugin.h +++ b/ahbuartplugin/ahbuartplugin.h @@ -34,22 +34,6 @@ #include - - - -#define APPENDTOLOG(message) this->UI->appendToLogFile(QTime::currentTime().toString() +":" + QString::number(QTime::currentTime().msec()) + ": " + message) - -#define APENDTABLETOLOG(table,size,Qstr,message) \ - Qstr.clear();\ - Qstr+=message;\ - for(int __i__tbllog__=0;(unsigned int)__i__tbllog__port,((data)+__writen__),((count)-__writen__)); \ if((timer).elapsed()>(timeout)) \ {\ - APPENDTOLOG(QString("Timeout error while writing"));\ this->port = (rs232port_t)NULL; \ this->Connected = false; \ emit this->activateSig(false); \ @@ -79,7 +62,6 @@ unsigned int __read__=0; \ __read__+=rs232read(this->port,((data)+__read__),((count)-__read__)); \ if((timer).elapsed()>(timeout)) \ { \ - APPENDTOLOG(QString("Timeout error while reading"));\ this->Connected = false; \ emit this->activateSig(false); \ this->portMutex->unlock(); \ @@ -111,6 +93,8 @@ public slots: void WriteBytes(unsigned int address,QList dataList); signals: void setProgressValue(int progress); + void addWritenBytes(int count); + void addReadBytes(int count); private: bool scanDone; QProgressDialog* progress; diff --git a/ahbuartplugin/ahbuartpluginui.cpp b/ahbuartplugin/ahbuartpluginui.cpp --- a/ahbuartplugin/ahbuartpluginui.cpp +++ b/ahbuartplugin/ahbuartpluginui.cpp @@ -29,10 +29,9 @@ ahbUartPluginUI::ahbUartPluginUI(QWidget ui->setupUi(this); connect(ui->OpenPort,SIGNAL(clicked()),this,SLOT(connectPort())); connect(ui->PortspeedSlider,SIGNAL(valueChanged(int)),ui->baurateLCD,SLOT(display(int))); - connect(ui->logFileChooseBp,SIGNAL(clicked()),this,SLOT(chooseLogFile())); - connect(this,SIGNAL(setLogFileName(QString)),this->ui->logFileName,SLOT(setText(QString))); connect(ui->rescanPorts,SIGNAL(clicked()),this,SIGNAL(rescanPorts())); - this->logFile = new QFile(); + this->writtenBytes = 0; + this->readBytes = 0; } void ahbUartPluginUI::connectPort() @@ -57,49 +56,24 @@ ahbUartPluginUI::~ahbUartPluginUI() } -void ahbUartPluginUI::chooseLogFile() -{ - if(this->logFile->isOpen()) - this->logFile->close(); - this->logFile->setFileName(QFileDialog::getSaveFileName(this,tr("Open Log file"),QDir::homePath(), tr("Log Files (*.txt *.log)"))); - if(this->logFile->open(QIODevice::WriteOnly)) - { - this->logFileStrm = new QTextStream(this->logFile); - emit this->setLogFileName(this->logFile->fileName()); - } -} - void ahbUartPluginUI::setconfig(QString PortName, int baudrate) { this->ui->PortName->setText(PortName); this->ui->PortspeedSlider->setValue(baudrate); } - -void ahbUartPluginUI::logFileEnDisable(int state) +void ahbUartPluginUI::addWritenBytes(int count) { - if(state==Qt::Checked) - { - this->logFileEn = true; - } - else if(state==Qt::Unchecked) - { - this->logFileEn = false; - } + this->writtenBytes+=count; + this->ui->WrBytesLCD->display(this->writtenBytes); } -bool ahbUartPluginUI::islogfileenable() +void ahbUartPluginUI::addReadBytes(int count) { - return this->logFileEn; + this->readBytes+=count; + this->ui->RdBytesLCD->display(this->readBytes); } -void ahbUartPluginUI::appendToLogFile(const QString & text) -{ - if(this->logFileEn && this->logFile->isOpen()) - { - *(this->logFileStrm) << text << endl; - } -} void ahbUartPluginUI::setCompleter(QCompleter *completer) { @@ -108,12 +82,6 @@ void ahbUartPluginUI::setCompleter(QComp void ahbUartPluginUI::closeEvent(QCloseEvent *event) { - if(this->logFile->isOpen()) - { - this->logFileStrm->flush(); - this->logFile->waitForBytesWritten(3000); - this->logFile->close(); - } event->accept(); } diff --git a/ahbuartplugin/ahbuartpluginui.h b/ahbuartplugin/ahbuartpluginui.h --- a/ahbuartplugin/ahbuartpluginui.h +++ b/ahbuartplugin/ahbuartpluginui.h @@ -41,26 +41,23 @@ class ahbUartPluginUI : public QWidget public: explicit ahbUartPluginUI(QWidget *parent = 0); ~ahbUartPluginUI(); - bool islogfileenable(); - void appendToLogFile(const QString & text); void closeEvent(QCloseEvent *event); void setCompleter(QCompleter* completer); public slots: void setConnected(bool connected); void connectPort(); - void chooseLogFile(); - void logFileEnDisable(int state); void setconfig(QString PortName,int baudrate); + void addWritenBytes(int count); + void addReadBytes(int count); signals: void connectPortsig(QString PortName,int baudrate); void setLogFileName(QString FileName); void rescanPorts(); private: + int writtenBytes; + int readBytes; Ui::ahbUartPluginUI *ui; - QFile* logFile; - QTextStream* logFileStrm; - bool logFileEn; }; #endif // AHBUARTPLUGINUI_H diff --git a/ahbuartplugin/ahbuartpluginui.ui b/ahbuartplugin/ahbuartpluginui.ui --- a/ahbuartplugin/ahbuartpluginui.ui +++ b/ahbuartplugin/ahbuartpluginui.ui @@ -6,14 +6,57 @@ 0 0 - 947 - 279 + 768 + 196 Form + + + + Statistics + + + + + + 8 + + + QLCDNumber::Flat + + + + + + + 8 + + + QLCDNumber::Flat + + + + + + + Read Bytes + + + + + + + Writen Bytes + + + + + + @@ -33,34 +76,10 @@ - - - - - - - Open Port - - - - - + + - Enable Logs - - - - - - - Choose file - - - - - - - SCAN + Port Speed @@ -71,19 +90,15 @@ - - + + - Port Speed + SCAN - - - - - - + + @@ -93,9 +108,6 @@ true - - 7 - 7 @@ -104,6 +116,26 @@ + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + Open Port + + + diff --git a/memcheckplugin/memchecker.cpp b/memcheckplugin/memchecker.cpp new file mode 100644 --- /dev/null +++ b/memcheckplugin/memchecker.cpp @@ -0,0 +1,57 @@ +/*------------------------------------------------------------------------------ +-- This file is a part of the SocExplorer Software +-- Copyright (C) 2014, Plasma Physics Laboratory - 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 : Alexis Jeandet +-- Mail : alexis.jeandet@lpp.polytechnique.fr +----------------------------------------------------------------------------*/ +#include "memchecker.h" + +memchecker::memchecker(socexplorerplugin* plugin) +{ + this->plugin = plugin; +} + +bool memchecker::checkmemory(unsigned int address,unsigned int size) +{ + bool success = true; + unsigned int* dataLocal = (unsigned int*)malloc(size); + unsigned int* dataOnBoard = (unsigned int*)malloc(size); + for(int i=0;(unsigned int)i<(size>>2);i++) + { + dataLocal[i]= (0xFFFF&rand())+(rand()<<16); + } + plugin->Write(dataLocal,size>>2,address); + plugin->Read(dataOnBoard,size>>2,address); + for(int i=0;(unsigned int)i<(size>>2);i++) + { + if(dataLocal[i]!=dataOnBoard[i]) + success=false; + } + + free(dataLocal); + free(dataOnBoard); + return success; +} + +bool memchecker::checkdatabits(unsigned int address,unsigned int size) +{ + bool success = true; + return success; +} + + diff --git a/memcheckplugin/memchecker.h b/memcheckplugin/memchecker.h new file mode 100644 --- /dev/null +++ b/memcheckplugin/memchecker.h @@ -0,0 +1,38 @@ +/*------------------------------------------------------------------------------ +-- This file is a part of the SocExplorer Software +-- Copyright (C) 2014, Plasma Physics Laboratory - 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 : Alexis Jeandet +-- Mail : alexis.jeandet@lpp.polytechnique.fr +----------------------------------------------------------------------------*/ +#ifndef MEMCHECKER_H +#define MEMCHECKER_H + +#include + +class memchecker +{ +public: + memchecker(socexplorerplugin* plugin); + bool checkmemory(unsigned int address,unsigned int size); + bool checkdatabits(unsigned int address,unsigned int size); + +private: + socexplorerplugin* plugin; +}; + +#endif // MEMCHECKER_H diff --git a/memcheckplugin/memcheckplugin.cpp b/memcheckplugin/memcheckplugin.cpp new file mode 100644 --- /dev/null +++ b/memcheckplugin/memcheckplugin.cpp @@ -0,0 +1,39 @@ +/*------------------------------------------------------------------------------ +-- This file is a part of the SocExplorer Software +-- Copyright (C) 2011, Plasma Physics Laboratory - 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 : Alexis Jeandet +-- Mail : alexis.jeandet@lpp.polytechnique.fr +----------------------------------------------------------------------------*/ +#include "memcheckplugin.h" + +memcheckplugin::memcheckplugin(QWidget *parent):socexplorerplugin(parent,true) +{ + this->UI = new memcheckplugin_ui(); + this->setWidget(this->UI); + this->checker = new memchecker(this); +} + +memcheckplugin::~memcheckplugin() +{} + +void memcheckplugin::startCheck() +{ + +} + + diff --git a/memcheckplugin/memcheckplugin.h b/memcheckplugin/memcheckplugin.h new file mode 100644 --- /dev/null +++ b/memcheckplugin/memcheckplugin.h @@ -0,0 +1,69 @@ +/*------------------------------------------------------------------------------ +-- This file is a part of the SocExplorer Software +-- Copyright (C) 2011, Plasma Physics Laboratory - 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 : Alexis Jeandet +-- Mail : alexis.jeandet@lpp.polytechnique.fr +----------------------------------------------------------------------------*/ +#ifndef MEMCTRLRPLUGIN_H +/*------------------------------------------------------------------------------ +-- This file is a part of the SocExplorer Software +-- Copyright (C) 2014, Plasma Physics Laboratory - 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 : Alexis Jeandet +-- Mail : alexis.jeandet@lpp.polytechnique.fr +----------------------------------------------------------------------------*/ +#define MEMCTRLRPLUGIN_H +#include "memcheckplugin_ui.h" +#include +#include +#include +#include +#include +#include +#include + +class memcheckplugin : public socexplorerplugin +{ + Q_OBJECT +public: + explicit memcheckplugin(QWidget *parent = 0); + ~memcheckplugin(); +public slots: + void startCheck(); +signals: + +private: + memcheckplugin_ui* UI; + memchecker* checker; +}; + +#endif // MEMCTRLRPLUGIN_H diff --git a/memcheckplugin/memcheckplugin.pro b/memcheckplugin/memcheckplugin.pro new file mode 100644 --- /dev/null +++ b/memcheckplugin/memcheckplugin.pro @@ -0,0 +1,71 @@ +# +# Project created by QtCreator 2011-09-20T08:15:30 +# +#------------------------------------------------- + +CONFIG += socexplorerplugin +CONFIG += dll +CONFIG -= static + +CONFIG(debug, debug|release) { + DEBUG_EXT = _d +} else { + DEBUG_EXT = +} + +TARGET = memcheckplugin$${DEBUG_EXT} +DEFINES += PLUGIN=memcheckplugin +DEFINES += PLUGINHEADER="\"\\\"memcheckplugin.h"\\\"\" +DEFINES += driver_Name="\"\\\"MemChecker"\\\"\" +DEFINES += driver_Author="\"\\\"Alexis Jeandet alexis.jeandet@lpp.polytechnique.fr"\\\"\" +DEFINES += driver_Version="\"\\\"1.0.1"\\\"\" +DEFINES += driver_Description="\"\\\"Memory controler driver, works with ESA's LEON2 memory controler."\\\"\" +DEFINES += driver_can_be_root=0 +DEFINES += driver_can_be_child=1 +DEFINES += driver_VID=0x04 +DEFINES += driver_PID=0x0f + +#LIBS +=-llppmoncommon + +INCLUDEPATH += \ + $${PWD} + +HEADERS += \ + memcheckplugin.h \ + memcheckplugin_ui.h \ + memchecker.h + +SOURCES += \ + memcheckplugin.cpp \ + memcheckplugin_ui.cpp \ + memchecker.cpp + +FORMS += \ + memcheckplugin_ui.ui + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/memcheckplugin/memcheckplugin_ui.cpp b/memcheckplugin/memcheckplugin_ui.cpp new file mode 100644 --- /dev/null +++ b/memcheckplugin/memcheckplugin_ui.cpp @@ -0,0 +1,54 @@ +/*------------------------------------------------------------------------------ +-- This file is a part of the SocExplorer Software +-- Copyright (C) 2014, Plasma Physics Laboratory - 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 : Alexis Jeandet +-- Mail : alexis.jeandet@lpp.polytechnique.fr +----------------------------------------------------------------------------*/ +#include "memcheckplugin_ui.h" +#include "ui_memcheckplugin_ui.h" +#include +#include + +memcheckplugin_ui::memcheckplugin_ui(QWidget *parent) : + QWidget(parent), + ui(new Ui::memcheckplugin_ui) +{ + ui->setupUi(this); + connect(this->ui->StartTestQpb,SIGNAL(clicked()),this,SLOT(startCheck())); +} + +memcheckplugin_ui::~memcheckplugin_ui() +{ + delete ui; +} + +void memcheckplugin_ui::startCheck() +{ + if(this->ui->testTypeQchkBx->currentText()=="Check data bits") + { + emit checkdatabits(this->ui->StartAddress->value(),this->ui->MemSize->getsize()); + } + if(this->ui->testTypeQchkBx->currentText()=="Check memory size") + { + emit checkmemory(this->ui->StartAddress->value(),this->ui->MemSize->getsize()); + } + if(this->ui->testTypeQchkBx->currentText()=="Full test") + { + + } +} diff --git a/memcheckplugin/memcheckplugin_ui.h b/memcheckplugin/memcheckplugin_ui.h new file mode 100644 --- /dev/null +++ b/memcheckplugin/memcheckplugin_ui.h @@ -0,0 +1,47 @@ +/*------------------------------------------------------------------------------ +-- This file is a part of the SocExplorer Software +-- Copyright (C) 2014, Plasma Physics Laboratory - 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 : Alexis Jeandet +-- Mail : alexis.jeandet@lpp.polytechnique.fr +----------------------------------------------------------------------------*/ +#ifndef MEMCHECKPLUGIN_UI_H +#define MEMCHECKPLUGIN_UI_H + +#include + +namespace Ui { +class memcheckplugin_ui; +} + +class memcheckplugin_ui : public QWidget +{ + Q_OBJECT + +public: + explicit memcheckplugin_ui(QWidget *parent = 0); + ~memcheckplugin_ui(); +public slots: + void startCheck(); +signals: + bool checkmemory(unsigned int address,unsigned int size); + bool checkdatabits(unsigned int address,unsigned int size); +private: + Ui::memcheckplugin_ui *ui; +}; + +#endif // MEMCHECKPLUGIN_UI_H diff --git a/memcheckplugin/memcheckplugin_ui.ui b/memcheckplugin/memcheckplugin_ui.ui new file mode 100644 --- /dev/null +++ b/memcheckplugin/memcheckplugin_ui.ui @@ -0,0 +1,102 @@ + + + memcheckplugin_ui + + + + 0 + 0 + 664 + 288 + + + + Form + + + + + + + Check data bits + + + + + Check memory size + + + + + Full test + + + + + + + + true + + + + + + + Test result + + + + + + + + + + + + + + Memory Size + + + + + + + Start address + + + + + + + Start Test + + + + + + + + + + + + + + QHexSpinBox + QWidget +
qhexspinbox.h
+ 1 +
+ + MemSizeWdgt + QWidget +
memsizewdgt.h
+ 1 +
+
+ + +