|
@@ -1,1258 +0,0 @@
|
|
-#include <stdio.h>
|
|
|
|
-#include <stdarg.h>
|
|
|
|
-#include <string>
|
|
|
|
-#include <regex>
|
|
|
|
-#include "gfativaflash.h"
|
|
|
|
-
|
|
|
|
-#define _TEST_VERBOSITY(v, n) (((v) == -1) && ((n) <= 2)) || (((v) >= 0) && ((v) >= (n)))
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-
|
|
|
|
-TivaFlash::TivaFlash(QObject *pParent) : QObject(pParent),
|
|
|
|
- m_nExitCode(0),
|
|
|
|
- m_slvIdIsNodeAddr(false),
|
|
|
|
- m_verbosity(-1),
|
|
|
|
- m_bExecuting(false),
|
|
|
|
- m_xBaudRate(0),
|
|
|
|
- m_curSlvID(0),
|
|
|
|
- m_appAddress(0),
|
|
|
|
- m_blockSize(0),
|
|
|
|
- m_pageEraseTime(0),
|
|
|
|
- m_mbCtrlRegister(0),
|
|
|
|
- m_forceAllParities(false),
|
|
|
|
- m_imgSizeFile(0),
|
|
|
|
- m_imgCRC32File(0.0),
|
|
|
|
- m_imgUpldProg(this),
|
|
|
|
- m_qProcess(this)
|
|
|
|
-{
|
|
|
|
- setObjectName("TivaFlash");
|
|
|
|
-
|
|
|
|
- for(int i = 0; i < _MAX_SLAVE_COUNT; i++)
|
|
|
|
- {
|
|
|
|
- m_materialEeprom.append("");
|
|
|
|
- m_serialEeprom.append("");
|
|
|
|
-
|
|
|
|
- m_imgSizeBoot.append(0);
|
|
|
|
- m_imgCRC32Boot.append(0.0);
|
|
|
|
- m_imgMaterialBoot.append("");
|
|
|
|
- m_imgBuildBoot.append("");
|
|
|
|
-
|
|
|
|
- m_imgSizeApp.append(0);
|
|
|
|
- m_imgCRC32App.append(0.0);
|
|
|
|
- m_imgMaterialApp.append("");
|
|
|
|
- m_imgBuildApp.append("");
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- connect(&m_qProcess, SIGNAL(started()), SLOT(onProcessStarted()));
|
|
|
|
- connect(&m_qProcess, SIGNAL(finished(int, QProcess::ExitStatus)), SLOT(onProcessFinished(int, QProcess::ExitStatus)));
|
|
|
|
- connect(&m_qProcess, SIGNAL(readyReadStandardOutput()), SLOT(onProcessReadyReadStandardOutput()));
|
|
|
|
- connect(&m_qProcess, SIGNAL(stateChanged(QProcess::ProcessState)), SLOT(onProcessStateChanged(QProcess::ProcessState)));
|
|
|
|
-
|
|
|
|
- m_qProcess.setProcessChannelMode(QProcess::MergedChannels);
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-TivaFlash::~TivaFlash(void)
|
|
|
|
-{
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-
|
|
|
|
-void TivaFlash::onProcessStarted(void)
|
|
|
|
-{
|
|
|
|
- setExecuting(true);
|
|
|
|
- emit processStarted(m_curSlvID);
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::onProcessFinished(int exitCode, QProcess::ExitStatus exitStatus)
|
|
|
|
-{
|
|
|
|
- setExecuting(false);
|
|
|
|
- emit processFinished(m_curSlvID, exitCode, exitStatus == QProcess::ExitStatus::NormalExit);
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::onProcessReadyReadStandardOutput(void)
|
|
|
|
-{
|
|
|
|
- char szLine[256];
|
|
|
|
-
|
|
|
|
- while(m_qProcess.readLine(szLine, sizeof(szLine)) > 0)
|
|
|
|
- {
|
|
|
|
- onCmdOutput(m_curSlvID, szLine);
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::onProcessStateChanged(QProcess::ProcessState newState)
|
|
|
|
-{
|
|
|
|
- setExecuting(newState != QProcess::ProcessState::NotRunning);
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-
|
|
|
|
-void TivaFlash::getSlavIDs(int nSlvID, int nMbID, QStringList &rargs) const
|
|
|
|
-{
|
|
|
|
- std::string ret;
|
|
|
|
-
|
|
|
|
- if(m_slvIdIsNodeAddr)
|
|
|
|
- rargs << QString::asprintf("--node-addr=%d", nSlvID);
|
|
|
|
- else
|
|
|
|
- rargs << QString::asprintf("--stat-num=%d", nSlvID);
|
|
|
|
-
|
|
|
|
- if(_IS_VALID_MB_ID(nMbID))
|
|
|
|
- {
|
|
|
|
- rargs << QString::asprintf("--mb-slave-id=%d", nMbID);
|
|
|
|
-
|
|
|
|
- if(m_mbCtrlRegister > 0)
|
|
|
|
- rargs << QString::asprintf("--mb-bl-ctrl-reg=%d", m_mbCtrlRegister);
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-
|
|
|
|
-void TivaFlash::getXBaud(QStringList &rargs) const
|
|
|
|
-{
|
|
|
|
- if(m_xBaudRate > 0)
|
|
|
|
- {
|
|
|
|
- rargs << QString::asprintf("--x-baud-rate=%d", m_xBaudRate);
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-
|
|
|
|
-void TivaFlash::getAppAddr(QStringList &rargs) const
|
|
|
|
-{
|
|
|
|
- if(m_appAddress > 0)
|
|
|
|
- {
|
|
|
|
- rargs << QString::asprintf("--app-addr=0x%X", m_appAddress);
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-
|
|
|
|
-void TivaFlash::getBlockSize(QStringList &rargs) const
|
|
|
|
-{
|
|
|
|
- if(m_blockSize > 0)
|
|
|
|
- {
|
|
|
|
- rargs << QString::asprintf("--block-size=%d", m_blockSize);
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-
|
|
|
|
-void TivaFlash::getPageEraseTime(QStringList &rargs) const
|
|
|
|
-{
|
|
|
|
- if(m_pageEraseTime > 0)
|
|
|
|
- {
|
|
|
|
- rargs << QString::asprintf("--page-erase-time=%d", m_pageEraseTime);
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-
|
|
|
|
-void TivaFlash::getForceAllParities(QStringList &rargs) const
|
|
|
|
-{
|
|
|
|
- if(m_forceAllParities)
|
|
|
|
- {
|
|
|
|
- rargs << QString::asprintf("--force-all-par");
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-
|
|
|
|
-int TivaFlash::parseTaggedString(const char *pszIn, std::string &sOut) const
|
|
|
|
-{
|
|
|
|
- static const std::string strRegEx = "<([0-9]+)>(.+)<\\/\\1>";
|
|
|
|
- static std::regex reg(strRegEx, std::regex_constants::ECMAScript | std::regex_constants::optimize);
|
|
|
|
- std::cmatch res;
|
|
|
|
-
|
|
|
|
- if(pszIn && *pszIn)
|
|
|
|
- {
|
|
|
|
- try
|
|
|
|
- {
|
|
|
|
- if(regex_search(pszIn, res, reg))
|
|
|
|
- {
|
|
|
|
- size_t nSize = res.size();
|
|
|
|
-
|
|
|
|
- if(nSize == 3)
|
|
|
|
- {
|
|
|
|
- std::string strTagName = res[1].str();
|
|
|
|
- sOut = res[2].str();
|
|
|
|
- return atoi(strTagName.c_str());
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- catch(...)
|
|
|
|
- {
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- return -1;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-
|
|
|
|
-int TivaFlash::parseTaggedValues(const char *pszIn, int &rnVal1, int &rnVal2) const
|
|
|
|
-{
|
|
|
|
- static const std::string strRegEx = "([0-9]+)\\|([0-9]+)";
|
|
|
|
- static std::regex reg(strRegEx, std::regex_constants::ECMAScript | std::regex_constants::optimize);
|
|
|
|
- std::cmatch res;
|
|
|
|
-
|
|
|
|
- if(pszIn && *pszIn)
|
|
|
|
- {
|
|
|
|
- try
|
|
|
|
- {
|
|
|
|
- if(regex_search(pszIn, res, reg))
|
|
|
|
- {
|
|
|
|
- size_t nSize = res.size();
|
|
|
|
-
|
|
|
|
- if(nSize == 3)
|
|
|
|
- {
|
|
|
|
- rnVal1 = atoi(res[1].str().c_str());
|
|
|
|
- rnVal2 = atoi(res[2].str().c_str());
|
|
|
|
- return nSize - 1;
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- catch(...)
|
|
|
|
- {
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- return -1;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-
|
|
|
|
-void TivaFlash::onCmdOutput(int nSlvID, const char *pszOut)
|
|
|
|
-{
|
|
|
|
- std::string s;
|
|
|
|
- int nTag = parseTaggedString(pszOut, s);
|
|
|
|
- int nVal1, nVal2;
|
|
|
|
-
|
|
|
|
- if(nTag >= 0)
|
|
|
|
- {
|
|
|
|
- QString qs = QString::fromStdString(s);
|
|
|
|
-
|
|
|
|
- switch(nTag)
|
|
|
|
- {
|
|
|
|
- /////////////////////////////////////////////////////////////////////
|
|
|
|
-
|
|
|
|
- case PLUGIN_TAG_EXIT_CODE:
|
|
|
|
- m_nExitCode = qs.toInt();
|
|
|
|
- break;
|
|
|
|
-
|
|
|
|
- /////////////////////////////////////////////////////////////////////
|
|
|
|
-
|
|
|
|
- case PLUGIN_TAG_STATUS:
|
|
|
|
- if(_TEST_VERBOSITY(m_verbosity, PLUGIN_TAG_STATUS))
|
|
|
|
- emit processOutput(nSlvID, nTag, qs);
|
|
|
|
- break;
|
|
|
|
- case PLUGIN_TAG_INFO:
|
|
|
|
- if(_TEST_VERBOSITY(m_verbosity, PLUGIN_TAG_INFO))
|
|
|
|
- emit processOutput(nSlvID, nTag, qs);
|
|
|
|
- break;
|
|
|
|
- case PLUGIN_TAG_ERROR:
|
|
|
|
- if(_TEST_VERBOSITY(m_verbosity, PLUGIN_TAG_ERROR))
|
|
|
|
- emit processOutput(nSlvID, nTag, qs);
|
|
|
|
- break;
|
|
|
|
-
|
|
|
|
- /////////////////////////////////////////////////////////////////////
|
|
|
|
-
|
|
|
|
- case PLUGIN_TAG_IMG_MATERIAL_EEPROM:
|
|
|
|
- setMaterialEeprom(nSlvID, qs);
|
|
|
|
- break;
|
|
|
|
- case PLUGIN_TAG_IMG_SERIAL_EEPROM:
|
|
|
|
- setSerialEeprom(nSlvID, qs);
|
|
|
|
- break;
|
|
|
|
-
|
|
|
|
- /////////////////////////////////////////////////////////////////////
|
|
|
|
-
|
|
|
|
- case PLUGIN_TAG_IMG_LENGTH_BOOT:
|
|
|
|
- setImgSizeBoot(nSlvID, qs.toUInt());
|
|
|
|
- break;
|
|
|
|
- case PLUGIN_TAG_IMG_CRC32_BOOT:
|
|
|
|
- setImgCRC32Boot(nSlvID, qs.toDouble());
|
|
|
|
- break;
|
|
|
|
- case PLUGIN_TAG_IMG_BUILD_BOOT:
|
|
|
|
- setImgBuildBoot(nSlvID, qs);
|
|
|
|
- break;
|
|
|
|
- case PLUGIN_TAG_IMG_MATERIAL_BOOT:
|
|
|
|
- setImgMaterialBoot(nSlvID, qs);
|
|
|
|
- break;
|
|
|
|
-
|
|
|
|
- /////////////////////////////////////////////////////////////////////
|
|
|
|
-
|
|
|
|
- case PLUGIN_TAG_IMG_LENGTH_APP:
|
|
|
|
- setImgSizeApp(nSlvID, qs.toUInt());
|
|
|
|
- break;
|
|
|
|
- case PLUGIN_TAG_IMG_CRC32_APP:
|
|
|
|
- setImgCRC32App(nSlvID, qs.toDouble());
|
|
|
|
- break;
|
|
|
|
- case PLUGIN_TAG_IMG_MATERIAL_APP:
|
|
|
|
- setImgBuildApp(nSlvID, qs);
|
|
|
|
- break;
|
|
|
|
- case PLUGIN_TAG_IMG_BUILD_APP:
|
|
|
|
- setImgMaterialApp(nSlvID, qs);
|
|
|
|
- break;
|
|
|
|
-
|
|
|
|
- /////////////////////////////////////////////////////////////////////
|
|
|
|
-
|
|
|
|
- case PLUGIN_TAG_IMG_LENGTH_FILE:
|
|
|
|
- setImgSizeFile(qs.toUInt());
|
|
|
|
- break;
|
|
|
|
- case PLUGIN_TAG_IMG_CRC32_FILE:
|
|
|
|
- setImgCRC32File(qs.toDouble());
|
|
|
|
- break;
|
|
|
|
- case PLUGIN_TAG_IMG_MATERIAL_FILE:
|
|
|
|
- setImgMaterialFile(qs);
|
|
|
|
- break;
|
|
|
|
- case PLUGIN_TAG_IMG_BUILD_FILE:
|
|
|
|
- setImgBuildFile(qs);
|
|
|
|
- break;
|
|
|
|
-
|
|
|
|
- /////////////////////////////////////////////////////////////////////
|
|
|
|
-
|
|
|
|
- case PLUGIN_TAG_UPLOAD_START_ERASE_FLASH:
|
|
|
|
- m_imgUpldProg.clear();
|
|
|
|
- m_imgUpldProg.setCtx(ImgUploadStatus::EraseFlashStart);
|
|
|
|
- if(parseTaggedValues(s.c_str(), nVal1, nVal2) == 2)
|
|
|
|
- {
|
|
|
|
- m_imgUpldProg.setUploadInProgress(true);
|
|
|
|
- m_imgUpldProg.setCntFlashPages(nVal1);
|
|
|
|
- m_imgUpldProg.setCbTotal(nVal2);
|
|
|
|
- emit imgUploadProgress(&m_imgUpldProg);
|
|
|
|
- }
|
|
|
|
- break;
|
|
|
|
- case PLUGIN_TAG_UPLOAD_END_ERASE_FLASH:
|
|
|
|
- m_imgUpldProg.setCtx(ImgUploadStatus::EraseFlashEnd);
|
|
|
|
- emit imgUploadProgress(&m_imgUpldProg);
|
|
|
|
- break;
|
|
|
|
- case PLUGIN_TAG_UPLOAD_BLOCKS_START:
|
|
|
|
- m_imgUpldProg.setCtx(ImgUploadStatus::ImgUploadStart);
|
|
|
|
- m_imgUpldProg.setCbBlock(qs.toInt());
|
|
|
|
- emit imgUploadProgress(&m_imgUpldProg);
|
|
|
|
- break;
|
|
|
|
- case PLUGIN_TAG_UPLOAD_BLOCK:
|
|
|
|
- m_imgUpldProg.setCtx(ImgUploadStatus::ImgUploadBlock);
|
|
|
|
- if(parseTaggedValues(s.c_str(), nVal1, nVal2) == 2)
|
|
|
|
- {
|
|
|
|
- int nCbTotal = m_imgUpldProg.cbTotal();
|
|
|
|
- int nCbSent = nVal1;
|
|
|
|
- m_imgUpldProg.setCbSent(nCbSent);
|
|
|
|
- if(nCbTotal)
|
|
|
|
- m_imgUpldProg.setPercentSent(nCbSent * 100 / nCbTotal);
|
|
|
|
- m_imgUpldProg.SetBlockNr(nVal2);
|
|
|
|
- emit imgUploadProgress(&m_imgUpldProg);
|
|
|
|
- }
|
|
|
|
- break;
|
|
|
|
- case PLUGIN_TAG_UPLOAD_BLOCKS_END:
|
|
|
|
- m_imgUpldProg.setCtx(ImgUploadStatus::ImgUploadSuccess);
|
|
|
|
- m_imgUpldProg.setErrorCode(0);
|
|
|
|
- m_imgUpldProg.setUploadInProgress(false);
|
|
|
|
- emit imgUploadProgress(&m_imgUpldProg);
|
|
|
|
- break;
|
|
|
|
- case PLUGIN_TAG_UPLOAD_ERROR:
|
|
|
|
- m_imgUpldProg.setCtx(ImgUploadStatus::ImgUploadError);
|
|
|
|
- m_imgUpldProg.setErrorCode(qs.toInt());
|
|
|
|
- m_imgUpldProg.setUploadInProgress(false);
|
|
|
|
- emit imgUploadProgress(&m_imgUpldProg);
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// command methods
|
|
|
|
-// getMatSer
|
|
|
|
-
|
|
|
|
-bool TivaFlash::getMatSer(int nSlvID, int nMbID)
|
|
|
|
-{
|
|
|
|
- if(m_bExecuting)
|
|
|
|
- return false;
|
|
|
|
- if(!_IS_VALID_SLV_ID(nSlvID))
|
|
|
|
- return false;
|
|
|
|
- m_curSlvID = nSlvID;
|
|
|
|
-
|
|
|
|
- setMaterialEeprom(nSlvID, "");
|
|
|
|
- setSerialEeprom(nSlvID, "");
|
|
|
|
-
|
|
|
|
- QStringList args;
|
|
|
|
- args << "--show-mat-ser";
|
|
|
|
- args << QString::asprintf("--itf-name=%s", m_itfName.c_str());
|
|
|
|
- getSlavIDs(nSlvID, nMbID, args);
|
|
|
|
- getForceAllParities(args);
|
|
|
|
- args << "--plugin-mode";
|
|
|
|
- m_qProcess.start(QString::fromStdString(m_tivaFlashUtilPath), args, QIODevice::ReadOnly);
|
|
|
|
- return true;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// getTargetImgInfo
|
|
|
|
-
|
|
|
|
-bool TivaFlash::getTargetImgInfo(int nSlvID, int nMbID)
|
|
|
|
-{
|
|
|
|
- if(m_bExecuting)
|
|
|
|
- return false;
|
|
|
|
- if(!_IS_VALID_SLV_ID(nSlvID))
|
|
|
|
- return false;
|
|
|
|
- m_curSlvID = nSlvID;
|
|
|
|
-
|
|
|
|
- setImgSizeBoot(nSlvID, 0);
|
|
|
|
- setImgCRC32Boot(nSlvID, 0.0);
|
|
|
|
- setImgMaterialBoot(nSlvID, "");
|
|
|
|
- setImgBuildBoot(nSlvID, "");
|
|
|
|
-
|
|
|
|
- setImgSizeApp(nSlvID, 0);
|
|
|
|
- setImgCRC32App(nSlvID, 0.0);
|
|
|
|
- setImgMaterialApp(nSlvID, "");
|
|
|
|
- setImgBuildApp(nSlvID, "");
|
|
|
|
-
|
|
|
|
- QStringList args;
|
|
|
|
- args << "--show-dev-img-info";
|
|
|
|
- args << QString::asprintf("--itf-name=%s", m_itfName.c_str());
|
|
|
|
- getSlavIDs(nSlvID, nMbID, args);
|
|
|
|
- getXBaud(args);
|
|
|
|
- getAppAddr(args);
|
|
|
|
- getForceAllParities(args);
|
|
|
|
- args << "--plugin-mode";
|
|
|
|
- m_qProcess.start(QString::fromStdString(m_tivaFlashUtilPath), args, QIODevice::ReadOnly);
|
|
|
|
- return true;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// getFileImgInfo
|
|
|
|
-
|
|
|
|
-bool TivaFlash::getFileImgInfo(void)
|
|
|
|
-{
|
|
|
|
- if(m_bExecuting)
|
|
|
|
- return false;
|
|
|
|
- m_curSlvID = 0;
|
|
|
|
-
|
|
|
|
- setImgSizeFile(0);
|
|
|
|
- setImgCRC32File(0.0);
|
|
|
|
- setImgMaterialFile("");
|
|
|
|
- setImgBuildFile("");
|
|
|
|
-
|
|
|
|
- QStringList args;
|
|
|
|
- args << "--show-file-img-info";
|
|
|
|
- args << "--plugin-mode";
|
|
|
|
- args << QString::fromStdString(m_imgFile);
|
|
|
|
- m_qProcess.start(QString::fromStdString(m_tivaFlashUtilPath), args, QIODevice::ReadOnly);
|
|
|
|
- return true;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// pingTarget
|
|
|
|
-
|
|
|
|
-bool TivaFlash::pingTarget(int nSlvID, int nMbID)
|
|
|
|
-{
|
|
|
|
- if(m_bExecuting)
|
|
|
|
- return false;
|
|
|
|
- if(!_IS_VALID_SLV_ID(nSlvID))
|
|
|
|
- return false;
|
|
|
|
- m_curSlvID = nSlvID;
|
|
|
|
-
|
|
|
|
- QStringList args;
|
|
|
|
- args << "--ping-target";
|
|
|
|
- args << QString::asprintf("--itf-name=%s", m_itfName.c_str());
|
|
|
|
- getSlavIDs(nSlvID, nMbID, args);
|
|
|
|
- getForceAllParities(args);
|
|
|
|
- args << "--plugin-mode";
|
|
|
|
- m_qProcess.start(QString::fromStdString(m_tivaFlashUtilPath), args, QIODevice::ReadOnly);
|
|
|
|
- return true;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// startBootloader
|
|
|
|
-
|
|
|
|
-bool TivaFlash::startBootloader(int nSlvID, int nMbID)
|
|
|
|
-{
|
|
|
|
- if(m_bExecuting)
|
|
|
|
- return false;
|
|
|
|
- if(!_IS_VALID_SLV_ID(nSlvID))
|
|
|
|
- return false;
|
|
|
|
- m_curSlvID = nSlvID;
|
|
|
|
-
|
|
|
|
- QStringList args;
|
|
|
|
- args << "--start-boot";
|
|
|
|
- args << QString::asprintf("--itf-name=%s", m_itfName.c_str());
|
|
|
|
- getSlavIDs(nSlvID, nMbID, args);
|
|
|
|
- getForceAllParities(args);
|
|
|
|
- args << "--plugin-mode";
|
|
|
|
- m_qProcess.start(QString::fromStdString(m_tivaFlashUtilPath), args, QIODevice::ReadOnly);
|
|
|
|
- return true;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// resetBootloader
|
|
|
|
-
|
|
|
|
-bool TivaFlash::resetBootloader(int nSlvID, int nMbID)
|
|
|
|
-{
|
|
|
|
- if(m_bExecuting)
|
|
|
|
- return false;
|
|
|
|
- if(!_IS_VALID_SLV_ID(nSlvID))
|
|
|
|
- return false;
|
|
|
|
- m_curSlvID = nSlvID;
|
|
|
|
-
|
|
|
|
- QStringList args;
|
|
|
|
- args << "--reset-boot";
|
|
|
|
- args << QString::asprintf("--itf-name=%s", m_itfName.c_str());
|
|
|
|
- getSlavIDs(nSlvID, nMbID, args);
|
|
|
|
- getForceAllParities(args);
|
|
|
|
- args << "--plugin-mode";
|
|
|
|
- m_qProcess.start(QString::fromStdString(m_tivaFlashUtilPath), args, QIODevice::ReadOnly);
|
|
|
|
- return true;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// validateImgFile
|
|
|
|
-
|
|
|
|
-bool TivaFlash::validateImgFile(int nSlvID, int nMbID)
|
|
|
|
-{
|
|
|
|
- if(m_bExecuting)
|
|
|
|
- return false;
|
|
|
|
- if(!_IS_VALID_SLV_ID(nSlvID))
|
|
|
|
- return false;
|
|
|
|
- m_curSlvID = nSlvID;
|
|
|
|
-
|
|
|
|
- QStringList args;
|
|
|
|
- args << "--validate-img";
|
|
|
|
- args << QString::asprintf("--itf-name=%s", m_itfName.c_str());
|
|
|
|
- getSlavIDs(nSlvID, nMbID, args);
|
|
|
|
- getAppAddr(args);
|
|
|
|
- getForceAllParities(args);
|
|
|
|
- args << "--plugin-mode";
|
|
|
|
- args << QString::fromStdString(m_imgFile);
|
|
|
|
- m_qProcess.start(QString::fromStdString(m_tivaFlashUtilPath), args, QIODevice::ReadOnly);
|
|
|
|
- return true;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// uploadImgFile
|
|
|
|
-
|
|
|
|
-bool TivaFlash::uploadImgFile(int nSlvID, int nMbID)
|
|
|
|
-{
|
|
|
|
- if(m_bExecuting)
|
|
|
|
- return false;
|
|
|
|
- if(!_IS_VALID_SLV_ID(nSlvID))
|
|
|
|
- return false;
|
|
|
|
- m_curSlvID = nSlvID;
|
|
|
|
- m_imgUpldProg.clear();
|
|
|
|
-
|
|
|
|
- QStringList args;
|
|
|
|
- args << "--upload-img";
|
|
|
|
- args << QString::asprintf("--itf-name=%s", m_itfName.c_str());
|
|
|
|
- getSlavIDs(nSlvID, nMbID, args);
|
|
|
|
- getXBaud(args);
|
|
|
|
- getAppAddr(args);
|
|
|
|
- getBlockSize(args);
|
|
|
|
- getPageEraseTime(args);
|
|
|
|
- getForceAllParities(args);
|
|
|
|
- args << "--plugin-mode";
|
|
|
|
- args << QString::fromStdString(m_imgFile);
|
|
|
|
- m_qProcess.start(QString::fromStdString(m_tivaFlashUtilPath), args, QIODevice::ReadOnly);
|
|
|
|
- return true;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// reviveBootloader
|
|
|
|
-
|
|
|
|
-bool TivaFlash::reviveBootloader(int nSlvID)
|
|
|
|
-{
|
|
|
|
- if(m_bExecuting)
|
|
|
|
- return false;
|
|
|
|
- if(!_IS_VALID_SLV_ID(nSlvID))
|
|
|
|
- return false;
|
|
|
|
- m_curSlvID = nSlvID;
|
|
|
|
-
|
|
|
|
- QStringList args;
|
|
|
|
- args << "--revive-boot";
|
|
|
|
- args << QString::asprintf("--itf-name=%s", m_itfName.c_str());
|
|
|
|
- getSlavIDs(nSlvID, 0, args);
|
|
|
|
- getForceAllParities(args);
|
|
|
|
- args << "--plugin-mode";
|
|
|
|
- m_qProcess.start(QString::fromStdString(m_tivaFlashUtilPath), args, QIODevice::ReadOnly);
|
|
|
|
- return true;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// clearImgInfo
|
|
|
|
-
|
|
|
|
-bool TivaFlash::clearImgInfo(int nSlvID)
|
|
|
|
-{
|
|
|
|
- if(m_bExecuting)
|
|
|
|
- return false;
|
|
|
|
- if(!_IS_VALID_SLV_ID(nSlvID))
|
|
|
|
- return false;
|
|
|
|
-
|
|
|
|
- setImgSizeFile(0);
|
|
|
|
- setImgCRC32File(0);
|
|
|
|
- setImgMaterialFile(0);
|
|
|
|
- setImgBuildFile(0);
|
|
|
|
-
|
|
|
|
- if(nSlvID > 0)
|
|
|
|
- {
|
|
|
|
- setMaterialEeprom(nSlvID, "");
|
|
|
|
- setSerialEeprom(nSlvID, "");
|
|
|
|
-
|
|
|
|
- setImgSizeBoot(nSlvID, 0);
|
|
|
|
- setImgCRC32Boot(nSlvID, 0);
|
|
|
|
- setImgMaterialBoot(nSlvID, "");
|
|
|
|
- setImgBuildBoot(nSlvID, "");
|
|
|
|
-
|
|
|
|
- setImgSizeApp(nSlvID, 0);
|
|
|
|
- setImgCRC32App(nSlvID, 0);
|
|
|
|
- setImgMaterialApp(nSlvID, "");
|
|
|
|
- setImgBuildApp(nSlvID, "");
|
|
|
|
- }
|
|
|
|
- else
|
|
|
|
- {
|
|
|
|
- for(int i = 0; i < _MAX_SLAVE_COUNT; ++i)
|
|
|
|
- {
|
|
|
|
- setMaterialEeprom(i, "");
|
|
|
|
- setSerialEeprom(i, "");
|
|
|
|
-
|
|
|
|
- setImgSizeBoot(i, 0);
|
|
|
|
- setImgCRC32Boot(i, 0);
|
|
|
|
- setImgMaterialBoot(i, "");
|
|
|
|
- setImgBuildBoot(i, "");
|
|
|
|
-
|
|
|
|
- setImgSizeApp(i, 0);
|
|
|
|
- setImgCRC32App(i, 0);
|
|
|
|
- setImgMaterialApp(i, "");
|
|
|
|
- setImgBuildApp(i, "");
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- return true;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// properties
|
|
|
|
-// tivaFlashUtilPath
|
|
|
|
-
|
|
|
|
-QString TivaFlash::tivaFlashUtilPath(void) const
|
|
|
|
-{
|
|
|
|
- return QString::fromStdString(m_tivaFlashUtilPath);
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setTivaFlashUtilPath(const QString &val)
|
|
|
|
-{
|
|
|
|
- m_tivaFlashUtilPath = val.toStdString();
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// itfName
|
|
|
|
-
|
|
|
|
-QString TivaFlash::itfName(void) const
|
|
|
|
-{
|
|
|
|
- return QString::fromStdString(m_itfName);
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setItfName(const QString &val)
|
|
|
|
-{
|
|
|
|
- m_itfName = val.toStdString();
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// slvIdIsNodeAddr
|
|
|
|
-
|
|
|
|
-bool TivaFlash::slvIdIsNodeAddr(void) const
|
|
|
|
-{
|
|
|
|
- return m_slvIdIsNodeAddr;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setSlvIdIsNodeAddr(bool val)
|
|
|
|
-{
|
|
|
|
- if(m_slvIdIsNodeAddr != val)
|
|
|
|
- {
|
|
|
|
- m_slvIdIsNodeAddr = val;
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// verbosity
|
|
|
|
-
|
|
|
|
-int TivaFlash::verbosity(void) const
|
|
|
|
-{
|
|
|
|
- return m_verbosity;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setVerbosity(int val)
|
|
|
|
-{
|
|
|
|
- if(val < 0)
|
|
|
|
- val = 0;
|
|
|
|
- else if(val > 3)
|
|
|
|
- val = 3;
|
|
|
|
-
|
|
|
|
- if(m_verbosity != val)
|
|
|
|
- {
|
|
|
|
- m_verbosity = val;
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// imgFile
|
|
|
|
-
|
|
|
|
-QString TivaFlash::imgFile(void) const
|
|
|
|
-{
|
|
|
|
- return QString::fromStdString(m_imgFile);
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setImgFile(const QString &val)
|
|
|
|
-{
|
|
|
|
- m_imgFile = val.toStdString();
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// executing
|
|
|
|
-
|
|
|
|
-bool TivaFlash::executing(void) const
|
|
|
|
-{
|
|
|
|
- return m_bExecuting;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setExecuting(bool val)
|
|
|
|
-{
|
|
|
|
- if(m_bExecuting != val)
|
|
|
|
- {
|
|
|
|
- m_bExecuting = val;
|
|
|
|
- emit executingChanged(m_bExecuting);
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// xBaudRate
|
|
|
|
-
|
|
|
|
-int TivaFlash::xBaudRate(void) const
|
|
|
|
-{
|
|
|
|
- return m_xBaudRate;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setXBaudRate(int val)
|
|
|
|
-{
|
|
|
|
- if(m_xBaudRate != val)
|
|
|
|
- {
|
|
|
|
- m_xBaudRate = val;
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// appAddress
|
|
|
|
-
|
|
|
|
-int TivaFlash::appAddress(void) const
|
|
|
|
-{
|
|
|
|
- return m_appAddress;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setAppAddress(int val)
|
|
|
|
-{
|
|
|
|
- if(m_appAddress != val)
|
|
|
|
- {
|
|
|
|
- m_appAddress = val;
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// blockSize
|
|
|
|
-
|
|
|
|
-int TivaFlash::blockSize(void) const
|
|
|
|
-{
|
|
|
|
- return m_blockSize;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setBlockSize(int val)
|
|
|
|
-{
|
|
|
|
- if(m_blockSize != val)
|
|
|
|
- {
|
|
|
|
- m_blockSize = val;
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// pageEraseTime
|
|
|
|
-
|
|
|
|
-int TivaFlash::pageEraseTime(void) const
|
|
|
|
-{
|
|
|
|
- return m_pageEraseTime;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setPageEraseTime(int val)
|
|
|
|
-{
|
|
|
|
- if(m_pageEraseTime != val)
|
|
|
|
- {
|
|
|
|
- m_pageEraseTime = val;
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// mbCtrlRegister
|
|
|
|
-
|
|
|
|
-int TivaFlash::mbCtrlRegister(void) const
|
|
|
|
-{
|
|
|
|
- return m_mbCtrlRegister;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setMbCtrlRegister(int val)
|
|
|
|
-{
|
|
|
|
- if(m_mbCtrlRegister != val)
|
|
|
|
- {
|
|
|
|
- m_mbCtrlRegister = val;
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// forceAllParities
|
|
|
|
-
|
|
|
|
-bool TivaFlash::forceAllParities(void) const
|
|
|
|
-{
|
|
|
|
- return m_forceAllParities;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setForceAllParities(bool val)
|
|
|
|
-{
|
|
|
|
- if(m_forceAllParities != val)
|
|
|
|
- {
|
|
|
|
- m_forceAllParities = val;
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// imgUploadStatus
|
|
|
|
-
|
|
|
|
-ImgUploadStatus* TivaFlash::imgUploadStatus(void)
|
|
|
|
-{
|
|
|
|
- return &m_imgUpldProg;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// materialEeprom
|
|
|
|
-
|
|
|
|
-const QStringList& TivaFlash::materialEeprom(void) const
|
|
|
|
-{
|
|
|
|
- return m_materialEeprom;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setMaterialEeprom(int nSlvID, const QString &val)
|
|
|
|
-{
|
|
|
|
- if(m_materialEeprom[nSlvID] != val)
|
|
|
|
- {
|
|
|
|
- m_materialEeprom[nSlvID] = val;
|
|
|
|
- emit materialEepromChanged();
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// serialEeprom
|
|
|
|
-
|
|
|
|
-const QStringList& TivaFlash::serialEeprom(void) const
|
|
|
|
-{
|
|
|
|
- return m_serialEeprom;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setSerialEeprom(int nSlvID, const QString &val)
|
|
|
|
-{
|
|
|
|
- if(m_serialEeprom[nSlvID] != val)
|
|
|
|
- {
|
|
|
|
- m_serialEeprom[nSlvID] = val;
|
|
|
|
- emit serialEepromChanged();
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// imgSizeBoot
|
|
|
|
-
|
|
|
|
-const QList<int>& TivaFlash::imgSizeBoot(void) const
|
|
|
|
-{
|
|
|
|
- return m_imgSizeBoot;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setImgSizeBoot(int nSlvID, int val)
|
|
|
|
-{
|
|
|
|
- if(m_imgSizeBoot[nSlvID] != val)
|
|
|
|
- {
|
|
|
|
- m_imgSizeBoot[nSlvID] = val;
|
|
|
|
- emit imgSizeBootChanged();
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// imgCRC32Boot
|
|
|
|
-
|
|
|
|
-const QList<double>& TivaFlash::imgCRC32Boot(void) const
|
|
|
|
-{
|
|
|
|
- return m_imgCRC32Boot;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setImgCRC32Boot(int nSlvID, double val)
|
|
|
|
-{
|
|
|
|
- if(m_imgCRC32Boot[nSlvID] != val)
|
|
|
|
- {
|
|
|
|
- m_imgCRC32Boot[nSlvID] = val;
|
|
|
|
- emit imgCRC32BootChanged();
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// imgMaterialBoot
|
|
|
|
-
|
|
|
|
-const QStringList& TivaFlash::imgMaterialBoot(void) const
|
|
|
|
-{
|
|
|
|
- return m_imgMaterialBoot;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setImgMaterialBoot(int nSlvID, const QString &val)
|
|
|
|
-{
|
|
|
|
- if(m_imgMaterialBoot[nSlvID] != val)
|
|
|
|
- {
|
|
|
|
- m_imgMaterialBoot[nSlvID] = val;
|
|
|
|
- emit imgMaterialBootChanged();
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// imgBuildBoot
|
|
|
|
-
|
|
|
|
-const QStringList& TivaFlash::imgBuildBoot(void) const
|
|
|
|
-{
|
|
|
|
- return m_imgBuildBoot;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setImgBuildBoot(int nSlvID, const QString &val)
|
|
|
|
-{
|
|
|
|
- if(m_imgBuildBoot[nSlvID] != val)
|
|
|
|
- {
|
|
|
|
- m_imgBuildBoot[nSlvID] = val;
|
|
|
|
- emit imgBuildBootChanged();
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// imgSizeApp
|
|
|
|
-
|
|
|
|
-const QList<int>& TivaFlash::imgSizeApp(void) const
|
|
|
|
-{
|
|
|
|
- return m_imgSizeApp;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setImgSizeApp(int nSlvID, int val)
|
|
|
|
-{
|
|
|
|
- if(m_imgSizeApp[nSlvID] != val)
|
|
|
|
- {
|
|
|
|
- m_imgSizeApp[nSlvID] = val;
|
|
|
|
- emit imgSizeAppChanged();
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// imgCRC32App
|
|
|
|
-
|
|
|
|
-const QList<double>& TivaFlash::imgCRC32App(void) const
|
|
|
|
-{
|
|
|
|
- return m_imgCRC32App;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setImgCRC32App(int nSlvID, double val)
|
|
|
|
-{
|
|
|
|
- if(m_imgCRC32App[nSlvID] != val)
|
|
|
|
- {
|
|
|
|
- m_imgCRC32App[nSlvID] = val;
|
|
|
|
- emit imgCRC32AppChanged();
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// imgMaterialApp
|
|
|
|
-
|
|
|
|
-const QStringList& TivaFlash::imgMaterialApp(void) const
|
|
|
|
-{
|
|
|
|
- return m_imgMaterialApp;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setImgMaterialApp(int nSlvID, const QString &val)
|
|
|
|
-{
|
|
|
|
- if(m_imgMaterialApp[nSlvID] != val)
|
|
|
|
- {
|
|
|
|
- m_imgMaterialApp[nSlvID] = val;
|
|
|
|
- emit imgMaterialAppChanged();
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// imgBuildApp
|
|
|
|
-
|
|
|
|
-const QStringList& TivaFlash::imgBuildApp(void) const
|
|
|
|
-{
|
|
|
|
- return m_imgBuildApp;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setImgBuildApp(int nSlvID, const QString &val)
|
|
|
|
-{
|
|
|
|
- if(m_imgBuildApp[nSlvID] != val)
|
|
|
|
- {
|
|
|
|
- m_imgBuildApp[nSlvID] = val;
|
|
|
|
- emit imgBuildAppChanged();
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// imgSizeFile
|
|
|
|
-
|
|
|
|
-int TivaFlash::imgSizeFile(void) const
|
|
|
|
-{
|
|
|
|
- return m_imgSizeFile;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setImgSizeFile(int val)
|
|
|
|
-{
|
|
|
|
- if(m_imgSizeFile != val)
|
|
|
|
- {
|
|
|
|
- m_imgSizeFile = val;
|
|
|
|
- emit imgSizeFileChanged(m_imgSizeFile);
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// imgCRC32File
|
|
|
|
-
|
|
|
|
-double TivaFlash::imgCRC32File(void) const
|
|
|
|
-{
|
|
|
|
- return m_imgCRC32File;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setImgCRC32File(double val)
|
|
|
|
-{
|
|
|
|
- if(m_imgCRC32File != val)
|
|
|
|
- {
|
|
|
|
- m_imgCRC32File = val;
|
|
|
|
- emit imgCRC32FileChanged(m_imgCRC32File);
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// imgMaterialFile
|
|
|
|
-
|
|
|
|
-const QString& TivaFlash::imgMaterialFile(void) const
|
|
|
|
-{
|
|
|
|
- return m_imgMaterialFile;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setImgMaterialFile(const QString &val)
|
|
|
|
-{
|
|
|
|
- if(m_imgMaterialFile != val)
|
|
|
|
- {
|
|
|
|
- m_imgMaterialFile = val;
|
|
|
|
- emit materialFileChanged(m_imgMaterialFile);
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// imgBuildFile
|
|
|
|
-
|
|
|
|
-const QString& TivaFlash::imgBuildFile(void) const
|
|
|
|
-{
|
|
|
|
- return m_imgBuildFile;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void TivaFlash::setImgBuildFile(const QString &val)
|
|
|
|
-{
|
|
|
|
- if(m_imgBuildFile != val)
|
|
|
|
- {
|
|
|
|
- m_imgBuildFile = val;
|
|
|
|
- emit imgBuildFileChanged(m_imgBuildFile);
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-
|
|
|
|
-ImgUploadStatus::ImgUploadStatus(QObject *pParent) : QObject(pParent)
|
|
|
|
-{
|
|
|
|
- setObjectName("ImgUploadStatus");
|
|
|
|
- clear();
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-ImgUploadStatus::~ImgUploadStatus(void)
|
|
|
|
-{
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-
|
|
|
|
-void ImgUploadStatus::clear(void)
|
|
|
|
-{
|
|
|
|
- m_nCtx = 0;
|
|
|
|
- m_nErrorCode = 0;
|
|
|
|
- m_nCbBlock = 0;
|
|
|
|
- m_nBlockNr = 0;
|
|
|
|
- m_nCbTotal = 0;
|
|
|
|
- m_nCbSent = 0;
|
|
|
|
- m_nPercentSent = 0;
|
|
|
|
- m_nCntFlashPages = 0;
|
|
|
|
- m_bUploadInProgress = false;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// properties
|
|
|
|
-// ctx
|
|
|
|
-
|
|
|
|
-int ImgUploadStatus::ctx(void) const
|
|
|
|
-{
|
|
|
|
- return m_nCtx;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void ImgUploadStatus::setCtx(int val)
|
|
|
|
-{
|
|
|
|
- if(m_nCtx != val)
|
|
|
|
- {
|
|
|
|
- m_nCtx = val;
|
|
|
|
- emit ctxChanged(m_nCtx);
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// errorCode
|
|
|
|
-
|
|
|
|
-int ImgUploadStatus::errorCode(void) const
|
|
|
|
-{
|
|
|
|
- return m_nErrorCode;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void ImgUploadStatus::setErrorCode(int val)
|
|
|
|
-{
|
|
|
|
- if(m_nErrorCode != val)
|
|
|
|
- {
|
|
|
|
- m_nErrorCode = val;
|
|
|
|
- emit errorCodeChanged(m_nErrorCode);
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// cbBlock
|
|
|
|
-
|
|
|
|
-int ImgUploadStatus::cbBlock(void) const
|
|
|
|
-{
|
|
|
|
- return m_nCbBlock;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void ImgUploadStatus::setCbBlock(int val)
|
|
|
|
-{
|
|
|
|
- if(m_nCbBlock != val)
|
|
|
|
- {
|
|
|
|
- m_nCbBlock = val;
|
|
|
|
- emit cbBlockChanged(m_nCbBlock);
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// blockNr
|
|
|
|
-
|
|
|
|
-int ImgUploadStatus::blockNr(void) const
|
|
|
|
-{
|
|
|
|
- return m_nBlockNr;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void ImgUploadStatus::SetBlockNr(int val)
|
|
|
|
-{
|
|
|
|
- if(m_nBlockNr != val)
|
|
|
|
- {
|
|
|
|
- m_nBlockNr = val;
|
|
|
|
- emit blockNrChanged(m_nBlockNr);
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// cbTotal
|
|
|
|
-
|
|
|
|
-int ImgUploadStatus::cbTotal(void) const
|
|
|
|
-{
|
|
|
|
- return m_nCbTotal;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void ImgUploadStatus::setCbTotal(int val)
|
|
|
|
-{
|
|
|
|
- if(m_nCbTotal != val)
|
|
|
|
- {
|
|
|
|
- m_nCbTotal = val;
|
|
|
|
- emit cbTotalChanged(m_nCbTotal);
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// cbSent
|
|
|
|
-
|
|
|
|
-int ImgUploadStatus::cbSent(void) const
|
|
|
|
-{
|
|
|
|
- return m_nCbSent;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void ImgUploadStatus::setCbSent(int val)
|
|
|
|
-{
|
|
|
|
- if(m_nCbSent != val)
|
|
|
|
- {
|
|
|
|
- m_nCbSent = val;
|
|
|
|
- emit cbSentChanged(m_nCbSent);
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// percentSent
|
|
|
|
-
|
|
|
|
-int ImgUploadStatus::percentSent(void) const
|
|
|
|
-{
|
|
|
|
- return m_nPercentSent;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void ImgUploadStatus::setPercentSent(int val)
|
|
|
|
-{
|
|
|
|
- if(m_nPercentSent != val)
|
|
|
|
- {
|
|
|
|
- m_nPercentSent = val;
|
|
|
|
- emit percentSentChanged(m_nPercentSent);
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// cntFlashPages
|
|
|
|
-
|
|
|
|
-int ImgUploadStatus::cntFlashPages(void) const
|
|
|
|
-{
|
|
|
|
- return m_nCntFlashPages;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void ImgUploadStatus::setCntFlashPages(int val)
|
|
|
|
-{
|
|
|
|
- if(m_nCntFlashPages != val)
|
|
|
|
- {
|
|
|
|
- m_nCntFlashPages = val;
|
|
|
|
- emit cntFlashPagesChanged(m_nCntFlashPages);
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/////////////////////////////////////////////////////////////////////////////
|
|
|
|
-// uploadInProgress
|
|
|
|
-
|
|
|
|
-bool ImgUploadStatus::uploadInProgress(void) const
|
|
|
|
-{
|
|
|
|
- return m_bUploadInProgress;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-void ImgUploadStatus::setUploadInProgress(bool val)
|
|
|
|
-{
|
|
|
|
- if(m_bUploadInProgress != val)
|
|
|
|
- {
|
|
|
|
- m_bUploadInProgress = val;
|
|
|
|
- emit uploadInProgressChanged(m_bUploadInProgress);
|
|
|
|
- }
|
|
|
|
-}
|
|
|