Device detection CAN reporting continuance
This commit is contained in:
@@ -0,0 +1,64 @@
|
||||
#include "DeviceDetectionConfig.h"
|
||||
#include "defines.h"
|
||||
|
||||
CDeviceDetectionConfig::CDeviceDetectionConfig()
|
||||
{
|
||||
mInternetDetectionCANStatusBit = 31;
|
||||
mMQTTDetectionCANStatusBit = 31;
|
||||
for(int i = 0; i < MAX_NB_LAN_DEVICE_DETECTION; i++)
|
||||
{
|
||||
mLANDeviceDetectConfigList.append(CLANDevicePresenceConfig());
|
||||
}
|
||||
mReportingCANMsgID = 300;
|
||||
}
|
||||
|
||||
QDataStream &operator>>(QDataStream &in, CDeviceDetectionConfig &dest)
|
||||
{
|
||||
in >> dest.mInternetDetectionCANStatusBit
|
||||
>> dest.mMQTTDetectionCANStatusBit
|
||||
>> dest.mReportingCANMsgID;
|
||||
|
||||
dest.mLANDeviceDetectConfigList.clear();
|
||||
for(int i = 0; i < MAX_NB_LAN_DEVICE_DETECTION; i++)
|
||||
{
|
||||
CLANDevicePresenceConfig LANDetectParams;
|
||||
// in >> LANDetectParams;
|
||||
in >> LANDetectParams;
|
||||
dest.mLANDeviceDetectConfigList.append(LANDetectParams);
|
||||
}
|
||||
|
||||
|
||||
return in;
|
||||
}
|
||||
QDataStream &operator<<(QDataStream &out, const CDeviceDetectionConfig &source)
|
||||
{
|
||||
out << source.mInternetDetectionCANStatusBit
|
||||
<< source.mMQTTDetectionCANStatusBit
|
||||
<< source.mReportingCANMsgID;
|
||||
for(int i = 0; i < source.mLANDeviceDetectConfigList.size(); i++)
|
||||
{
|
||||
out << source.mLANDeviceDetectConfigList[i];
|
||||
}
|
||||
return out;
|
||||
}
|
||||
|
||||
CDeviceDetectionConfig& CDeviceDetectionConfig::operator=(const CDeviceDetectionConfig &source)
|
||||
{
|
||||
if(&source == this)
|
||||
{
|
||||
return *this;
|
||||
}
|
||||
|
||||
this->mInternetDetectionCANStatusBit = source.mInternetDetectionCANStatusBit;
|
||||
this->mMQTTDetectionCANStatusBit = source.mMQTTDetectionCANStatusBit;
|
||||
this->mReportingCANMsgID = source.mReportingCANMsgID;
|
||||
this->mLANDeviceDetectConfigList.clear();
|
||||
for(int i = 0; i < source.mLANDeviceDetectConfigList.size(); i++)
|
||||
{
|
||||
CLANDevicePresenceConfig Temp;
|
||||
Temp = source.mLANDeviceDetectConfigList[i];
|
||||
this->mLANDeviceDetectConfigList.append(Temp);
|
||||
}
|
||||
|
||||
return *this;
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
#ifndef DEVICEDETECTIONCONFIG_H
|
||||
#define DEVICEDETECTIONCONFIG_H
|
||||
#include <QList>
|
||||
#include "LANDevicePresenceConfig.h"
|
||||
#include <QDataStream>
|
||||
|
||||
class CDeviceDetectionConfig
|
||||
{
|
||||
public:
|
||||
CDeviceDetectionConfig();
|
||||
|
||||
unsigned int mReportingCANMsgID;
|
||||
quint64 mInternetDetectionCANStatusBit;
|
||||
quint64 mMQTTDetectionCANStatusBit;
|
||||
QList<CLANDevicePresenceConfig> mLANDeviceDetectConfigList;
|
||||
|
||||
CDeviceDetectionConfig &operator=(const CDeviceDetectionConfig &source);
|
||||
};
|
||||
|
||||
QDataStream &operator<<(QDataStream &out, const CDeviceDetectionConfig &source);
|
||||
QDataStream &operator>>(QDataStream &in, CDeviceDetectionConfig &dest);
|
||||
|
||||
#endif // DEVICEDETECTIONCONFIG_H
|
||||
@@ -20,17 +20,61 @@ CLoggingSettingsPage::CLoggingSettingsPage(QWidget *parent) :
|
||||
ui->mCloudMQTTRefreshRateSpinBx->setEnabled(false);
|
||||
ui->mCloudMQTTClientID->setEnabled(false);
|
||||
|
||||
ui->mDevicePresenceAdd1LineEdit->setInputMask("000.000.000.000");
|
||||
ui->mDevicePresenceAdd2LineEdit->setInputMask("000.000.000.000");
|
||||
ui->mDevicePresenceAdd3LineEdit->setInputMask("000.000.000.000");
|
||||
ui->mDevicePresenceAdd4LineEdit->setInputMask("000.000.000.000");
|
||||
ui->mDevicePresenceAdd5LineEdit->setInputMask("000.000.000.000");
|
||||
ui->mDevicePresCancelBtn->hide();
|
||||
ui->mDevicePresenceActive1ChkBx->setEnabled(false);
|
||||
ui->mDevicePresenceActive2ChkBx->setEnabled(false);
|
||||
ui->mDevicePresenceActive3ChkBx->setEnabled(false);
|
||||
ui->mDevicePresenceActive4ChkBx->setEnabled(false);
|
||||
ui->mDevicePresenceActive5ChkBx->setEnabled(false);
|
||||
ui->mDevicePresenceAdd1LineEdit->setEnabled(false);
|
||||
ui->mDevicePresenceAdd2LineEdit->setEnabled(false);
|
||||
ui->mDevicePresenceAdd3LineEdit->setEnabled(false);
|
||||
ui->mDevicePresenceAdd4LineEdit->setEnabled(false);
|
||||
ui->mDevicePresenceAdd5LineEdit->setEnabled(false);
|
||||
ui->mDevicePresenceBit1ComboBox->setEnabled(false);
|
||||
ui->mDevicePresenceBit2ComboBox->setEnabled(false);
|
||||
ui->mDevicePresenceBit3ComboBox->setEnabled(false);
|
||||
ui->mDevicePresenceBit4ComboBox->setEnabled(false);
|
||||
ui->mDevicePresenceBit5ComboBox->setEnabled(false);
|
||||
ui->mInternetPresBitComboBox->setEnabled(false);
|
||||
ui->mMQTTPresenceBitComboBox->setEnabled(false);
|
||||
ui->mWatchdogMsgIDSpinBx->setEnabled(false);
|
||||
|
||||
ui->mDevicePresenceAdd1LineEdit->setText("192.168.10.111");
|
||||
ui->mDevicePresenceAdd2LineEdit->setText("192.168.10.222");
|
||||
ui->mDevicePresenceAdd3LineEdit->setText("192.168.10.333");
|
||||
ui->mDevicePresenceAdd4LineEdit->setText("192.168.10.444");
|
||||
ui->mDevicePresenceAdd5LineEdit->setText("192.168.10.555");
|
||||
ui->mDevicePresenceAdd1LineEdit->setInputMask("000.000.000.000");
|
||||
ui->mDevicePresenceAdd2LineEdit->setInputMask("000.000.000.000");
|
||||
ui->mDevicePresenceAdd3LineEdit->setInputMask("000.000.000.000");
|
||||
ui->mDevicePresenceAdd4LineEdit->setInputMask("000.000.000.000");
|
||||
ui->mDevicePresenceAdd5LineEdit->setInputMask("000.000.000.000");
|
||||
|
||||
ui->mDevicePresenceAdd1LineEdit->setText("192.168.10.111");
|
||||
ui->mDevicePresenceAdd2LineEdit->setText("192.168.10.222");
|
||||
ui->mDevicePresenceAdd3LineEdit->setText("192.168.10.333");
|
||||
ui->mDevicePresenceAdd4LineEdit->setText("192.168.10.444");
|
||||
ui->mDevicePresenceAdd5LineEdit->setText("192.168.10.555");
|
||||
|
||||
QStringList BitsList;
|
||||
for(int i = 31; i < 64; i++)
|
||||
{
|
||||
//BitsList.append(QString("%1").arg(i));
|
||||
|
||||
ui->mInternetPresBitComboBox->addItem(QString("%1").arg(i),QVariant(i));
|
||||
ui->mMQTTPresenceBitComboBox->addItem(QString("%1").arg(i),QVariant(i));
|
||||
ui->mDevicePresenceBit1ComboBox->addItem(QString("%1").arg(i),QVariant(i));
|
||||
ui->mDevicePresenceBit2ComboBox->addItem(QString("%1").arg(i),QVariant(i));
|
||||
ui->mDevicePresenceBit3ComboBox->addItem(QString("%1").arg(i),QVariant(i));
|
||||
ui->mDevicePresenceBit4ComboBox->addItem(QString("%1").arg(i),QVariant(i));
|
||||
ui->mDevicePresenceBit5ComboBox->addItem(QString("%1").arg(i),QVariant(i));
|
||||
|
||||
}
|
||||
// ui->mInternetPresBitComboBox->addItems(BitsList);
|
||||
// ui->mMQTTPresenceBitComboBox->addItems(BitsList);
|
||||
// ui->mDevicePresenceBit1ComboBox->addItems(BitsList);
|
||||
// ui->mDevicePresenceBit2ComboBox->addItems(BitsList);
|
||||
// ui->mDevicePresenceBit3ComboBox->addItems(BitsList);
|
||||
// ui->mDevicePresenceBit4ComboBox->addItems(BitsList);
|
||||
// ui->mDevicePresenceBit5ComboBox->addItems(BitsList);
|
||||
|
||||
mDevicePresenceEditMode = false;
|
||||
|
||||
connect(ui->mCancelBtn,&QPushButton::clicked,this,&CLoggingSettingsPage::CancelBtnPressed);
|
||||
connect(ui->mChangeParamsBtn,&QPushButton::clicked,this,&CLoggingSettingsPage::ModifyParamsBtnPressed);
|
||||
@@ -39,6 +83,14 @@ CLoggingSettingsPage::CLoggingSettingsPage(QWidget *parent) :
|
||||
connect(ui->mWDActiveChkBx,&QCheckBox::stateChanged,this,&CLoggingSettingsPage::EnableCPUWDCheckBxClicked);
|
||||
connect(ui->mWDTimerTimeoutSpinBx,QOverload<int>::of(&QSpinBox::valueChanged),this,&CLoggingSettingsPage::CPUWDTimeoutChanged);
|
||||
|
||||
connect(ui->mDevicePresenceActive1ChkBx,&QCheckBox::stateChanged,this,&CLoggingSettingsPage::DevicePresenceEnableChkBxChanged);
|
||||
connect(ui->mDevicePresenceActive2ChkBx,&QCheckBox::stateChanged,this,&CLoggingSettingsPage::DevicePresenceEnableChkBxChanged);
|
||||
connect(ui->mDevicePresenceActive3ChkBx,&QCheckBox::stateChanged,this,&CLoggingSettingsPage::DevicePresenceEnableChkBxChanged);
|
||||
connect(ui->mDevicePresenceActive4ChkBx,&QCheckBox::stateChanged,this,&CLoggingSettingsPage::DevicePresenceEnableChkBxChanged);
|
||||
connect(ui->mDevicePresenceActive5ChkBx,&QCheckBox::stateChanged,this,&CLoggingSettingsPage::DevicePresenceEnableChkBxChanged);
|
||||
connect(ui->mDevicePresChangeParamsBtn,&QPushButton::clicked,this,&CLoggingSettingsPage::DevicePresenceModifyParamsBtnPressed);
|
||||
connect(ui->mDevicePresCancelBtn,&QPushButton::clicked,this,&CLoggingSettingsPage::DevicePresenceCancelBtnPressed);
|
||||
|
||||
}
|
||||
|
||||
CLoggingSettingsPage::~CLoggingSettingsPage()
|
||||
@@ -84,9 +136,24 @@ int CLoggingSettingsPage::SetCPUWatchdogSettings(const CCPUWatchdogConfig *CPUWa
|
||||
|
||||
UpdateCPUWatchdogParams();
|
||||
|
||||
return RET_OK;
|
||||
|
||||
}
|
||||
|
||||
int CLoggingSettingsPage::SetDeviceConfigSettings(const CDeviceDetectionConfig *DevDetectCfgParams)
|
||||
{
|
||||
if(DevDetectCfgParams == 0)
|
||||
{
|
||||
return RET_GENERAL_ERROR;
|
||||
}
|
||||
|
||||
mDeviceDetectConfigHandle = *DevDetectCfgParams;
|
||||
|
||||
UpdateDevicePresenceParams(true);
|
||||
|
||||
return RET_OK;
|
||||
}
|
||||
|
||||
void CLoggingSettingsPage::ModifyParamsBtnPressed()
|
||||
{
|
||||
if(EditMode == false)
|
||||
@@ -219,3 +286,211 @@ void CLoggingSettingsPage::CPUWDTimeoutChanged(int value)
|
||||
mCPUWatchdogParams.mWatchdogTimeout = ui->mWDTimerTimeoutSpinBx->value();
|
||||
mProgramHandle->SaveCPUWatchdogSettingsRequest(&mCPUWatchdogParams);
|
||||
}
|
||||
|
||||
int CLoggingSettingsPage::UpdateDevicePresenceParams(bool Restore)
|
||||
{
|
||||
if(Restore == true)
|
||||
{
|
||||
ui->mWatchdogMsgIDSpinBx->setValue(mDeviceDetectConfigHandle.mReportingCANMsgID);
|
||||
ui->mDevicePresenceAdd1LineEdit->setText(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[0].mDeviceIPAddress);
|
||||
ui->mDevicePresenceAdd2LineEdit->setText(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[1].mDeviceIPAddress);
|
||||
ui->mDevicePresenceAdd3LineEdit->setText(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[2].mDeviceIPAddress);
|
||||
ui->mDevicePresenceAdd4LineEdit->setText(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[3].mDeviceIPAddress);
|
||||
ui->mDevicePresenceAdd5LineEdit->setText(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[4].mDeviceIPAddress);
|
||||
|
||||
ui->mDevicePresenceActive1ChkBx->setChecked(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[0].mIsDetectionActive);
|
||||
ui->mDevicePresenceActive2ChkBx->setChecked(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[1].mIsDetectionActive);
|
||||
ui->mDevicePresenceActive3ChkBx->setChecked(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[2].mIsDetectionActive);
|
||||
ui->mDevicePresenceActive4ChkBx->setChecked(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[3].mIsDetectionActive);
|
||||
ui->mDevicePresenceActive5ChkBx->setChecked(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[4].mIsDetectionActive);
|
||||
|
||||
ui->mDevicePresenceBit1ComboBox->setCurrentIndex(ui->mDevicePresenceBit1ComboBox->findData(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[0].mCANStatusBit));
|
||||
ui->mDevicePresenceBit2ComboBox->setCurrentIndex(ui->mDevicePresenceBit1ComboBox->findData(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[1].mCANStatusBit));
|
||||
ui->mDevicePresenceBit3ComboBox->setCurrentIndex(ui->mDevicePresenceBit1ComboBox->findData(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[2].mCANStatusBit));
|
||||
ui->mDevicePresenceBit4ComboBox->setCurrentIndex(ui->mDevicePresenceBit1ComboBox->findData(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[3].mCANStatusBit));
|
||||
ui->mDevicePresenceBit5ComboBox->setCurrentIndex(ui->mDevicePresenceBit1ComboBox->findData(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[4].mCANStatusBit));
|
||||
ui->mMQTTPresenceBitComboBox->setCurrentIndex(ui->mMQTTPresenceBitComboBox->findData(mDeviceDetectConfigHandle.mMQTTDetectionCANStatusBit));
|
||||
ui->mInternetPresBitComboBox->setCurrentIndex(ui->mInternetPresBitComboBox->findData(mDeviceDetectConfigHandle.mInternetDetectionCANStatusBit));
|
||||
}
|
||||
|
||||
if(ui->mDevicePresenceActive1ChkBx->checkState() == Qt::Checked && mDevicePresenceEditMode == true)
|
||||
{
|
||||
ui->mDevicePresenceAdd1LineEdit->setEnabled(true);
|
||||
ui->mDevicePresenceBit1ComboBox->setEnabled(true);
|
||||
}
|
||||
else
|
||||
{
|
||||
ui->mDevicePresenceAdd1LineEdit->setEnabled(false);
|
||||
ui->mDevicePresenceBit1ComboBox->setEnabled(false);
|
||||
}
|
||||
|
||||
if(ui->mDevicePresenceActive2ChkBx->checkState() == Qt::Checked && mDevicePresenceEditMode == true)
|
||||
{
|
||||
ui->mDevicePresenceAdd2LineEdit->setEnabled(true);
|
||||
ui->mDevicePresenceBit2ComboBox->setEnabled(true);
|
||||
}
|
||||
else
|
||||
{
|
||||
ui->mDevicePresenceAdd2LineEdit->setEnabled(false);
|
||||
ui->mDevicePresenceBit2ComboBox->setEnabled(false);
|
||||
}
|
||||
|
||||
if(ui->mDevicePresenceActive3ChkBx->checkState() == Qt::Checked && mDevicePresenceEditMode == true)
|
||||
{
|
||||
ui->mDevicePresenceAdd3LineEdit->setEnabled(true);
|
||||
ui->mDevicePresenceBit3ComboBox->setEnabled(true);
|
||||
}
|
||||
else
|
||||
{
|
||||
ui->mDevicePresenceAdd3LineEdit->setEnabled(false);
|
||||
ui->mDevicePresenceBit3ComboBox->setEnabled(false);
|
||||
}
|
||||
|
||||
|
||||
if(ui->mDevicePresenceActive4ChkBx->checkState() == Qt::Checked && mDevicePresenceEditMode == true)
|
||||
{
|
||||
ui->mDevicePresenceAdd4LineEdit->setEnabled(true);
|
||||
ui->mDevicePresenceBit4ComboBox->setEnabled(true);
|
||||
}
|
||||
else
|
||||
{
|
||||
ui->mDevicePresenceAdd4LineEdit->setEnabled(false);
|
||||
ui->mDevicePresenceBit4ComboBox->setEnabled(false);
|
||||
}
|
||||
|
||||
|
||||
if(ui->mDevicePresenceActive5ChkBx->checkState() == Qt::Checked && mDevicePresenceEditMode == true)
|
||||
{
|
||||
ui->mDevicePresenceAdd5LineEdit->setEnabled(true);
|
||||
ui->mDevicePresenceBit5ComboBox->setEnabled(true);
|
||||
}
|
||||
else
|
||||
{
|
||||
ui->mDevicePresenceAdd5LineEdit->setEnabled(false);
|
||||
ui->mDevicePresenceBit5ComboBox->setEnabled(false);
|
||||
}
|
||||
|
||||
|
||||
return RET_OK;
|
||||
}
|
||||
|
||||
void CLoggingSettingsPage::DevicePresenceEnableChkBxChanged(int state)
|
||||
{
|
||||
UpdateDevicePresenceParams(false);
|
||||
}
|
||||
|
||||
void CLoggingSettingsPage::DevicePresenceCancelBtnPressed()
|
||||
{
|
||||
UpdateDevicePresenceParams();
|
||||
|
||||
mDevicePresenceEditMode = false;
|
||||
ui->mDevicePresCancelBtn->hide();
|
||||
ui->mDevicePresChangeParamsBtn->setText("Modifier");
|
||||
|
||||
ui->mDevicePresenceActive1ChkBx->setEnabled(false);
|
||||
ui->mDevicePresenceActive2ChkBx->setEnabled(false);
|
||||
ui->mDevicePresenceActive3ChkBx->setEnabled(false);
|
||||
ui->mDevicePresenceActive4ChkBx->setEnabled(false);
|
||||
ui->mDevicePresenceActive5ChkBx->setEnabled(false);
|
||||
ui->mDevicePresenceAdd1LineEdit->setEnabled(false);
|
||||
ui->mDevicePresenceAdd2LineEdit->setEnabled(false);
|
||||
ui->mDevicePresenceAdd3LineEdit->setEnabled(false);
|
||||
ui->mDevicePresenceAdd4LineEdit->setEnabled(false);
|
||||
ui->mDevicePresenceAdd5LineEdit->setEnabled(false);
|
||||
ui->mDevicePresenceBit1ComboBox->setEnabled(false);
|
||||
ui->mDevicePresenceBit2ComboBox->setEnabled(false);
|
||||
ui->mDevicePresenceBit3ComboBox->setEnabled(false);
|
||||
ui->mDevicePresenceBit4ComboBox->setEnabled(false);
|
||||
ui->mDevicePresenceBit5ComboBox->setEnabled(false);
|
||||
ui->mWatchdogMsgIDSpinBx->setEnabled(false);
|
||||
ui->mInternetPresBitComboBox->setEnabled(false);
|
||||
ui->mMQTTPresenceBitComboBox->setEnabled(false);
|
||||
}
|
||||
|
||||
void CLoggingSettingsPage::DevicePresenceModifyParamsBtnPressed()
|
||||
{
|
||||
if(mDevicePresenceEditMode == false)
|
||||
{
|
||||
mDevicePresenceEditMode = true;
|
||||
ui->mDevicePresCancelBtn->show();
|
||||
ui->mDevicePresChangeParamsBtn->setText("Appliquer");
|
||||
|
||||
ui->mDevicePresenceActive1ChkBx->setEnabled(true);
|
||||
ui->mDevicePresenceActive2ChkBx->setEnabled(true);
|
||||
ui->mDevicePresenceActive3ChkBx->setEnabled(true);
|
||||
ui->mDevicePresenceActive4ChkBx->setEnabled(true);
|
||||
ui->mDevicePresenceActive5ChkBx->setEnabled(true);
|
||||
ui->mWatchdogMsgIDSpinBx->setEnabled(true);
|
||||
ui->mInternetPresBitComboBox->setEnabled(true);
|
||||
ui->mMQTTPresenceBitComboBox->setEnabled(true);
|
||||
|
||||
UpdateDevicePresenceParams(false);
|
||||
}
|
||||
else
|
||||
{
|
||||
//save data
|
||||
|
||||
mDevicePresenceEditMode = false;
|
||||
ui->mDevicePresCancelBtn->hide();
|
||||
ui->mDevicePresChangeParamsBtn->setText("Modifier");
|
||||
|
||||
ui->mDevicePresenceActive1ChkBx->setEnabled(false);
|
||||
ui->mDevicePresenceActive2ChkBx->setEnabled(false);
|
||||
ui->mDevicePresenceActive3ChkBx->setEnabled(false);
|
||||
ui->mDevicePresenceActive4ChkBx->setEnabled(false);
|
||||
ui->mDevicePresenceActive5ChkBx->setEnabled(false);
|
||||
ui->mDevicePresenceAdd1LineEdit->setEnabled(false);
|
||||
ui->mDevicePresenceAdd2LineEdit->setEnabled(false);
|
||||
ui->mDevicePresenceAdd3LineEdit->setEnabled(false);
|
||||
ui->mDevicePresenceAdd4LineEdit->setEnabled(false);
|
||||
ui->mDevicePresenceAdd5LineEdit->setEnabled(false);
|
||||
ui->mDevicePresenceBit1ComboBox->setEnabled(false);
|
||||
ui->mDevicePresenceBit2ComboBox->setEnabled(false);
|
||||
ui->mDevicePresenceBit3ComboBox->setEnabled(false);
|
||||
ui->mDevicePresenceBit4ComboBox->setEnabled(false);
|
||||
ui->mDevicePresenceBit5ComboBox->setEnabled(false);
|
||||
ui->mWatchdogMsgIDSpinBx->setEnabled(false);
|
||||
ui->mInternetPresBitComboBox->setEnabled(false);
|
||||
ui->mMQTTPresenceBitComboBox->setEnabled(false);
|
||||
|
||||
|
||||
bool OK;
|
||||
|
||||
mDeviceDetectConfigHandle.mInternetDetectionCANStatusBit = ui->mInternetPresBitComboBox->currentData().toInt(&OK);
|
||||
mDeviceDetectConfigHandle.mMQTTDetectionCANStatusBit = ui->mMQTTPresenceBitComboBox->currentData().toInt(&OK);
|
||||
mDeviceDetectConfigHandle.mReportingCANMsgID = ui->mWatchdogMsgIDSpinBx->value();
|
||||
|
||||
mDeviceDetectConfigHandle.mLANDeviceDetectConfigList.clear();
|
||||
CLANDevicePresenceConfig NewLANCfg;
|
||||
NewLANCfg.mCANStatusBit = ui->mDevicePresenceBit1ComboBox->currentData().toInt(&OK);
|
||||
NewLANCfg.mDeviceIPAddress = ui->mDevicePresenceAdd1LineEdit->text();
|
||||
NewLANCfg.mIsDetectionActive = (ui->mDevicePresenceActive1ChkBx->checkState() == Qt::Checked);
|
||||
mDeviceDetectConfigHandle.mLANDeviceDetectConfigList.append(NewLANCfg);
|
||||
|
||||
NewLANCfg = CLANDevicePresenceConfig();
|
||||
NewLANCfg.mCANStatusBit = ui->mDevicePresenceBit2ComboBox->currentData().toInt(&OK);
|
||||
NewLANCfg.mDeviceIPAddress = ui->mDevicePresenceAdd2LineEdit->text();
|
||||
NewLANCfg.mIsDetectionActive = (ui->mDevicePresenceActive2ChkBx->checkState() == Qt::Checked);
|
||||
mDeviceDetectConfigHandle.mLANDeviceDetectConfigList.append(NewLANCfg);
|
||||
|
||||
NewLANCfg = CLANDevicePresenceConfig();
|
||||
NewLANCfg.mCANStatusBit = ui->mDevicePresenceBit3ComboBox->currentData().toInt(&OK);
|
||||
NewLANCfg.mDeviceIPAddress = ui->mDevicePresenceAdd3LineEdit->text();
|
||||
NewLANCfg.mIsDetectionActive = (ui->mDevicePresenceActive3ChkBx->checkState() == Qt::Checked);
|
||||
mDeviceDetectConfigHandle.mLANDeviceDetectConfigList.append(NewLANCfg);
|
||||
|
||||
NewLANCfg = CLANDevicePresenceConfig();
|
||||
NewLANCfg.mCANStatusBit = ui->mDevicePresenceBit4ComboBox->currentData().toInt(&OK);
|
||||
NewLANCfg.mDeviceIPAddress = ui->mDevicePresenceAdd4LineEdit->text();
|
||||
NewLANCfg.mIsDetectionActive = (ui->mDevicePresenceActive4ChkBx->checkState() == Qt::Checked);
|
||||
mDeviceDetectConfigHandle.mLANDeviceDetectConfigList.append(NewLANCfg);
|
||||
|
||||
NewLANCfg = CLANDevicePresenceConfig();
|
||||
NewLANCfg.mCANStatusBit = ui->mDevicePresenceBit5ComboBox->currentData().toInt(&OK);
|
||||
NewLANCfg.mDeviceIPAddress = ui->mDevicePresenceAdd5LineEdit->text();
|
||||
NewLANCfg.mIsDetectionActive = (ui->mDevicePresenceActive5ChkBx->checkState() == Qt::Checked);
|
||||
mDeviceDetectConfigHandle.mLANDeviceDetectConfigList.append(NewLANCfg);
|
||||
|
||||
mProgramHandle->SaveDeviceDetectionSettingsRequest(&mDeviceDetectConfigHandle);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
#include "CloudParams.h"
|
||||
#include "GeneralSystemParams.h"
|
||||
#include "CPUWatchdogConfig.h"
|
||||
|
||||
#include <DeviceDetectionConfig.h>
|
||||
|
||||
class COtarcikCan;
|
||||
|
||||
@@ -24,15 +24,19 @@ public:
|
||||
int SetCloudParams(const CCloudParams *CloudParams);
|
||||
int SetGeneralSettingsParams(const CGeneralSystemParams *GeneralParams);
|
||||
int SetCPUWatchdogSettings(const CCPUWatchdogConfig *CPUWatchdogParams);
|
||||
int SetDeviceConfigSettings(const CDeviceDetectionConfig *DevDetectCfgParams);
|
||||
|
||||
|
||||
|
||||
COtarcikCan *mProgramHandle;
|
||||
|
||||
|
||||
private:
|
||||
int UpdateCloudConfig();
|
||||
int UpdateGeneralParams();
|
||||
int UpdateCPUWatchdogParams();
|
||||
int UpdateCANFlagsParams();
|
||||
int UpdateDevicePresenceParams(bool Restore = true);
|
||||
|
||||
Ui::CLoggingSettingsPage *ui;
|
||||
|
||||
@@ -40,6 +44,10 @@ private:
|
||||
CCloudParams mCloudParams;
|
||||
CGeneralSystemParams mGeneralSystemParams;
|
||||
CCPUWatchdogConfig mCPUWatchdogParams;
|
||||
CDeviceDetectionConfig mDeviceDetectConfigHandle;
|
||||
|
||||
|
||||
bool mDevicePresenceEditMode;
|
||||
|
||||
|
||||
|
||||
@@ -49,6 +57,9 @@ public slots:
|
||||
void VerbosityParamsChanged(int value);
|
||||
void EnableCPUWDCheckBxClicked(int state);
|
||||
void CPUWDTimeoutChanged(int value);
|
||||
void DevicePresenceEnableChkBxChanged(int state);
|
||||
void DevicePresenceModifyParamsBtnPressed();
|
||||
void DevicePresenceCancelBtnPressed();
|
||||
|
||||
|
||||
};
|
||||
|
||||
@@ -508,7 +508,7 @@
|
||||
<rect>
|
||||
<x>1020</x>
|
||||
<y>80</y>
|
||||
<width>411</width>
|
||||
<width>341</width>
|
||||
<height>311</height>
|
||||
</rect>
|
||||
</property>
|
||||
@@ -853,6 +853,32 @@ la date et l'heure</string>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="mDevicePresChangeParamsBtn">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>1270</x>
|
||||
<y>400</y>
|
||||
<width>80</width>
|
||||
<height>22</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Modifier</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QPushButton" name="mDevicePresCancelBtn">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>1170</x>
|
||||
<y>400</y>
|
||||
<width>80</width>
|
||||
<height>22</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Annuler</string>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections/>
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
#include "LANDevicePresenceConfig.h"
|
||||
#include <QString>
|
||||
|
||||
CLANDevicePresenceConfig::CLANDevicePresenceConfig()
|
||||
{
|
||||
mDeviceIPAddress = "123.456.789.345";
|
||||
mCANStatusBit = 31;
|
||||
mIsDetectionActive = false;
|
||||
mDeviceDescription = "";
|
||||
}
|
||||
|
||||
|
||||
QDataStream &operator>>(QDataStream &in, CLANDevicePresenceConfig &dest)
|
||||
{
|
||||
in >> dest.mDeviceIPAddress
|
||||
>> dest.mCANStatusBit
|
||||
>> dest.mIsDetectionActive
|
||||
>> dest.mDeviceDescription;
|
||||
|
||||
return in;
|
||||
}
|
||||
QDataStream &operator<<(QDataStream &out, const CLANDevicePresenceConfig &source)
|
||||
{
|
||||
out << source.mDeviceIPAddress
|
||||
<< source.mCANStatusBit
|
||||
<< source.mIsDetectionActive
|
||||
<< source.mDeviceDescription;
|
||||
|
||||
return out;
|
||||
}
|
||||
|
||||
CLANDevicePresenceConfig& CLANDevicePresenceConfig::operator=(const CLANDevicePresenceConfig &source)
|
||||
{
|
||||
if(&source == this)
|
||||
{
|
||||
return *this;
|
||||
}
|
||||
|
||||
this->mCANStatusBit = source.mCANStatusBit;
|
||||
this->mDeviceDescription = source.mDeviceDescription;
|
||||
this->mDeviceIPAddress = source.mDeviceIPAddress;
|
||||
this->mIsDetectionActive = source.mIsDetectionActive;
|
||||
|
||||
return *this;
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
#ifndef LANDEVICEPRESENCECONFIG_H
|
||||
#define LANDEVICEPRESENCECONFIG_H
|
||||
#include <QDataStream>
|
||||
|
||||
class CLANDevicePresenceConfig
|
||||
{
|
||||
public:
|
||||
CLANDevicePresenceConfig();
|
||||
|
||||
QString mDeviceIPAddress;
|
||||
unsigned int mCANStatusBit;
|
||||
bool mIsDetectionActive;
|
||||
QString mDeviceDescription;
|
||||
|
||||
CLANDevicePresenceConfig& operator=(const CLANDevicePresenceConfig &source);
|
||||
};
|
||||
|
||||
QDataStream &operator<<(QDataStream &out, const CLANDevicePresenceConfig &source);
|
||||
QDataStream &operator>>(QDataStream &in, CLANDevicePresenceConfig &dest);
|
||||
|
||||
#endif // LANDEVICEPRESENCECONFIG_H
|
||||
@@ -91,6 +91,9 @@ int COtarcikCan::Start()
|
||||
mCPUInterface.SetWatchdogSettings(&mCPUWatchdogParams);
|
||||
mMainWindow.mDataLoggingSettingsPage->SetCPUWatchdogSettings(mSystemConfig.GetCPUWatchdogSettings());
|
||||
|
||||
mDeviceDetectionConfigParams = *mSystemConfig.GetDeviceDetectionConfig();
|
||||
mMainWindow.mDataLoggingSettingsPage->SetDeviceConfigSettings(mSystemConfig.GetDeviceDetectionConfig());
|
||||
|
||||
// mMainWindow.mCANWatchdogSettingsPage->SetCANWatchdogConfig(mSystemConfig.GetCANWatchdogConfig());
|
||||
|
||||
// mGPTimer->setSingleShot(false);
|
||||
@@ -246,6 +249,13 @@ int COtarcikCan::SaveCPUWatchdogSettingsRequest(CCPUWatchdogConfig *CPUWatchdogP
|
||||
return RET_OK;
|
||||
}
|
||||
|
||||
int COtarcikCan::SaveDeviceDetectionSettingsRequest(CDeviceDetectionConfig *DeviceDetectconfig)
|
||||
{
|
||||
mDeviceDetectionConfigParams = *DeviceDetectconfig;
|
||||
mSystemConfig.SetDeviceDetectionConfig(DeviceDetectconfig);
|
||||
mSystemConfig.SaveConfig();
|
||||
}
|
||||
|
||||
void COtarcikCan::GPTimerExpired()
|
||||
{
|
||||
// mCANBusMQTTClient.SendMQTTTestMessage();
|
||||
|
||||
@@ -39,6 +39,7 @@ public:
|
||||
int SaveCloudLoggingConfigRequest(CCloudParams *CloudParams);
|
||||
int SaveGeneralParametersSettingsRequest(CGeneralSystemParams *GeneralParams);
|
||||
int SaveCPUWatchdogSettingsRequest(CCPUWatchdogConfig *CPUWatchdogParams);
|
||||
int SaveDeviceDetectionSettingsRequest(CDeviceDetectionConfig *DeviceDetectconfig);
|
||||
|
||||
int SetCANConnectionStatusRequest(bool Connected);
|
||||
int SetMQTTConnectionSatusRequest(bool Connected);
|
||||
@@ -48,6 +49,8 @@ public:
|
||||
|
||||
int SaveCANWatchdogSettingsRequest(CCANWatchdogConfig *CANWatchdogConfig);
|
||||
|
||||
|
||||
|
||||
void QuitApplicationRequest();
|
||||
|
||||
private:
|
||||
@@ -55,6 +58,7 @@ private:
|
||||
CCloudParams mCloudLoggingParams;
|
||||
CGeneralSystemParams mGeneralSystemParams;
|
||||
CCPUWatchdogConfig mCPUWatchdogParams;
|
||||
CDeviceDetectionConfig mDeviceDetectionConfigParams;
|
||||
|
||||
int PopulateCANDevicesList(QList<CCANDeviceConfig*> *DevicesConfigsList);
|
||||
|
||||
|
||||
@@ -84,6 +84,12 @@ int CSystemConfig::LoadConfig()
|
||||
*InputStream >> mCPUWatchdogParams;
|
||||
}
|
||||
|
||||
//Load the device devection reporting params
|
||||
if(FileVersion > 1)
|
||||
{
|
||||
*InputStream >> mDeviceDetectionParams;
|
||||
}
|
||||
|
||||
|
||||
|
||||
ConfigFile->close();
|
||||
@@ -142,6 +148,9 @@ int CSystemConfig::SaveConfig()
|
||||
//Save the CPU Watchdog params
|
||||
*OutputStream << mCPUWatchdogParams;
|
||||
|
||||
//Save the device detection reporting params
|
||||
*OutputStream << mDeviceDetectionParams;
|
||||
|
||||
ConfigFile->flush();
|
||||
ConfigFile->close();
|
||||
|
||||
@@ -238,3 +247,18 @@ int CSystemConfig::SetCPUWatchdogPArams(CCPUWatchdogConfig *CPUWatchdogParams)
|
||||
mCPUWatchdogParams = *CPUWatchdogParams;
|
||||
return RET_OK;
|
||||
}
|
||||
|
||||
int CSystemConfig::SetDeviceDetectionConfig(CDeviceDetectionConfig *DeviceDetectconfig)
|
||||
{
|
||||
if(DeviceDetectconfig == 0)
|
||||
{
|
||||
return RET_GENERAL_ERROR;
|
||||
}
|
||||
|
||||
mDeviceDetectionParams = *DeviceDetectconfig;
|
||||
}
|
||||
|
||||
CDeviceDetectionConfig* CSystemConfig::GetDeviceDetectionConfig()
|
||||
{
|
||||
return &mDeviceDetectionParams;
|
||||
}
|
||||
|
||||
@@ -10,6 +10,7 @@
|
||||
#include "CANWatchdogConfig.h"
|
||||
#include "GeneralSystemParams.h"
|
||||
#include "CPUWatchdogConfig.h"
|
||||
#include "DeviceDetectionConfig.h"
|
||||
|
||||
#define OTARCIK_CURRENT_CONFIG_FILE_VERSION 0x02
|
||||
#define OTARCIK_CONFIG_FILE_MAGIC_NBR 0xDEADBEEF
|
||||
@@ -35,6 +36,9 @@ public:
|
||||
int SetGeneralSystemParams(CGeneralSystemParams *GeneralParams);
|
||||
CCPUWatchdogConfig *GetCPUWatchdogSettings();
|
||||
int SetCPUWatchdogPArams(CCPUWatchdogConfig *CPUWatchdogParams);
|
||||
CDeviceDetectionConfig *GetDeviceDetectionConfig();
|
||||
int SetDeviceDetectionConfig (CDeviceDetectionConfig *DeviceDetectconfig);
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -56,6 +60,11 @@ public:
|
||||
//Hardware watchdog settings
|
||||
CCPUWatchdogConfig mCPUWatchdogParams;
|
||||
|
||||
//Device detection and reporting config
|
||||
CDeviceDetectionConfig mDeviceDetectionParams;
|
||||
|
||||
//
|
||||
|
||||
|
||||
|
||||
};
|
||||
|
||||
@@ -15,6 +15,8 @@
|
||||
#define USE_TOPIC_PREFIX
|
||||
#define FORCE_FLOAT_REPRESENTATION
|
||||
|
||||
#define MAX_NB_LAN_DEVICE_DETECTION 5
|
||||
|
||||
enum eOtarcikGeneralReturns
|
||||
{
|
||||
RET_OK = 0,
|
||||
|
||||
Reference in New Issue
Block a user