第一次提交
This commit is contained in:
121
Source/MainSettings/MainConfigParser.cpp
Normal file
121
Source/MainSettings/MainConfigParser.cpp
Normal file
@ -0,0 +1,121 @@
|
||||
#include "MainConfigParser.h"
|
||||
|
||||
MainConfigParser::MainConfigParser(QObject* parent /*= nullptr*/)
|
||||
{
|
||||
m_bIsInit = false;
|
||||
}
|
||||
|
||||
MainConfigParser::~MainConfigParser()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
int MainConfigParser::SetFilePath(QString qstrFullFilePath)
|
||||
{
|
||||
m_qstrFullFilePath = qstrFullFilePath;
|
||||
return 0;
|
||||
}
|
||||
|
||||
int MainConfigParser::GetParams(MiscControls& struMiscCtrls, M300RTKSettings& struM300RTKSs, SensorPort& struSensorPort)
|
||||
{
|
||||
if (!m_bIsInit)
|
||||
{
|
||||
Initialize(m_qstrFullFilePath);
|
||||
}
|
||||
|
||||
struSensorPort.qstrGasSensorPort = m_struSensorPort.qstrGasSensorPort;
|
||||
struSensorPort.qstrWindSensorPort = m_struSensorPort.qstrWindSensorPort;
|
||||
|
||||
struMiscCtrls.iPumpGPIOPort = m_struMiscCtrls.iPumpGPIOPort;
|
||||
|
||||
struM300RTKSs.qstrM300RTKUDEV1 = m_struM300RTKSs.qstrM300RTKUDEV1;
|
||||
struM300RTKSs.qstrM300RTKUDEV2 = m_struM300RTKSs.qstrM300RTKUDEV2;
|
||||
struM300RTKSs.qstrM300RTKWidgetFilePath = m_struM300RTKSs.qstrM300RTKWidgetFilePath;
|
||||
struM300RTKSs.qstrM300RTKSettingsFilePath = m_struM300RTKSs.qstrM300RTKSettingsFilePath;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int MainConfigParser::Initialize(QString qstrPath)
|
||||
{
|
||||
QFileInfo qfiSettings(qstrPath);
|
||||
if (!qfiSettings.exists())
|
||||
{
|
||||
qDebug() << "Fatal Error.Main config file not found.!!!";
|
||||
return 1;
|
||||
}
|
||||
|
||||
QSettings qsMainSettings(qfiSettings.filePath(), QSettings::Format::IniFormat);
|
||||
|
||||
QString qstrWindSensorPort = qsMainSettings.value(QString("SENSOR/WindSensorPort"), "Error").toString();
|
||||
qDebug() << "qstrWindSensorPort:" << qstrWindSensorPort;
|
||||
if (qstrWindSensorPort == "Error")
|
||||
{
|
||||
qDebug() << "MainConfigParser:Func Initialize.WindSensorPort not load";
|
||||
return 2;
|
||||
}
|
||||
m_struSensorPort.qstrWindSensorPort = qstrWindSensorPort;
|
||||
|
||||
QString qstrGasSensorPort = qsMainSettings.value(QString("SENSOR/GasSensorPort"), "Error").toString();
|
||||
qDebug() << "qstrGasSensorPort:" << qstrGasSensorPort;
|
||||
if (qstrGasSensorPort == "Error")
|
||||
{
|
||||
qDebug() << "MainConfigParser:Func Initialize.GasSensorPort not load";
|
||||
return 3;
|
||||
}
|
||||
m_struSensorPort.qstrGasSensorPort = qstrGasSensorPort;
|
||||
|
||||
int iPumpGPIO = qsMainSettings.value(QString("GPIO/PortNumber"), "-1").toInt();
|
||||
qDebug() << "iPumpGPIO:" << iPumpGPIO;
|
||||
if (iPumpGPIO == -1)
|
||||
{
|
||||
qDebug() << "MainConfigParser:Func Initialize.iPumpGPIO not load";
|
||||
return 4;
|
||||
}
|
||||
m_struMiscCtrls.iPumpGPIOPort = iPumpGPIO;
|
||||
|
||||
QString qstrUART1= qsMainSettings.value(QString("M300RTK/UART1"), "Error").toString();
|
||||
if (qstrUART1 == "Error")
|
||||
{
|
||||
qDebug() << "MainConfigParser:Func Initialize.M300 UART1 not load";
|
||||
return 5;
|
||||
}
|
||||
m_struM300RTKSs.qstrM300RTKUDEV1= qstrUART1;
|
||||
strcpy(gvpcM300RTK_UART1, qstrUART1.toLatin1().data());
|
||||
|
||||
QString qstrUART2 = qsMainSettings.value(QString("M300RTK/UART2"), "Error").toString();
|
||||
if (qstrUART2 == "Error")
|
||||
{
|
||||
qDebug() << "MainConfigParser:Func Initialize.M300 UART2 not load";
|
||||
return 6;
|
||||
}
|
||||
m_struM300RTKSs.qstrM300RTKUDEV2 = qstrUART2;
|
||||
strcpy(gvpcM300RTK_UART2, qstrUART2.toLatin1().data());
|
||||
|
||||
QString qstrSettingsFilePath = qsMainSettings.value(QString("M300RTK/SettingsFilePath"), "Error").toString();
|
||||
if (qstrSettingsFilePath == "Error")
|
||||
{
|
||||
qDebug() << "MainConfigParser:Func Initialize.M300 SettingsFilePath not load";
|
||||
return 7;
|
||||
}
|
||||
m_struM300RTKSs.qstrM300RTKSettingsFilePath = qstrSettingsFilePath;
|
||||
|
||||
QString qstrWidgetFilePath = qsMainSettings.value(QString("M300RTK/WidgetFilePath"), "Error").toString();
|
||||
if (qstrWidgetFilePath == "Error")
|
||||
{
|
||||
qDebug() << "MainConfigParser:Func Initialize.M300 WidgetFilePath not load";
|
||||
return 8;
|
||||
}
|
||||
m_struM300RTKSs.qstrM300RTKWidgetFilePath = qstrWidgetFilePath;
|
||||
|
||||
#ifdef ZZ_FLAG_TEST
|
||||
qDebug() << "UART 1" << gvpcM300RTK_UART1;
|
||||
qDebug() << "UART 2" << gvpcM300RTK_UART2;
|
||||
qDebug() << "WidgetFilePath" << qstrWidgetFilePath;
|
||||
qDebug() << "SettingsFilePath" << qstrSettingsFilePath;
|
||||
#endif
|
||||
|
||||
m_bIsInit = 1;
|
||||
return 0;
|
||||
}
|
||||
|
29
Source/MainSettings/MainConfigParser.h
Normal file
29
Source/MainSettings/MainConfigParser.h
Normal file
@ -0,0 +1,29 @@
|
||||
#pragma once
|
||||
#include "pch.h"
|
||||
#include "ZZ_Types.h"
|
||||
#include "hal_uart.h"
|
||||
using namespace ZZ_DATA_DEF::MainConfig;
|
||||
class MainConfigParser:public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
MainConfigParser(QObject* parent = nullptr);
|
||||
virtual ~MainConfigParser();
|
||||
private:
|
||||
QString m_qstrFullFilePath;
|
||||
|
||||
MiscControls m_struMiscCtrls;
|
||||
M300RTKSettings m_struM300RTKSs;
|
||||
SensorPort m_struSensorPort;
|
||||
|
||||
bool m_bIsInit;
|
||||
public:
|
||||
int SetFilePath(QString qstrFullFilePath);
|
||||
int GetParams(MiscControls &struMiscCtrls,M300RTKSettings& struM300RTKSs,SensorPort& struSensorPort);
|
||||
private:
|
||||
int Initialize(QString qstrPath);
|
||||
public:
|
||||
|
||||
};
|
||||
|
||||
|
10
Source/MainSettings/SettingsFile/MainSettings.ini
Normal file
10
Source/MainSettings/SettingsFile/MainSettings.ini
Normal file
@ -0,0 +1,10 @@
|
||||
[SENSOR]
|
||||
WindSensorPort=/dev/ttyS2
|
||||
GasSensorPort=/dev/ttyS1
|
||||
[M300RTK]
|
||||
UART1=/dev/ttyUSB0
|
||||
UART2=/dev/ttyACM0
|
||||
WidgetFilePath=/home/data/DJI/Settings
|
||||
SettingsFilePath=/home/data/DJI/Widget
|
||||
[GPIO]
|
||||
PortNumber=7
|
Reference in New Issue
Block a user