93 lines
2.5 KiB
C++
93 lines
2.5 KiB
C++
#pragma once
|
|
#ifndef __WBFZAlgComponetXmlParaseOperator_H__
|
|
#define __WBFZAlgComponetXmlParaseOperator_H__
|
|
#include <QObject>
|
|
#include <QString>
|
|
#include <QFileDialog>
|
|
#include <QMessageBox>
|
|
#include <QDebug>
|
|
#include <QtXml>
|
|
#include <QFile>
|
|
#include <QTextStream>
|
|
#include <QDomDocument>
|
|
#include <QDomElement>
|
|
#include <QDomNode>
|
|
#include <QDomNodeList>
|
|
#include <QDomText>
|
|
#include <QDomNamedNodeMap>
|
|
#include <QDomAttr>
|
|
#include <QDomEntity>
|
|
#include <QDomEntityReference>
|
|
#include "KJ135WBJYAlgWidgetComponet.h" // 算法组件参数界面组件类
|
|
|
|
|
|
// 算法组件参数xml项
|
|
class WBFZAlgComponetXmlParamenterItem :QObject
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
WBFZAlgComponetXmlParamenterItem(QDomElement* itemparameter,QObject* parent=nullptr);
|
|
~WBFZAlgComponetXmlParamenterItem();
|
|
private:
|
|
QString ParaName; // 参数名称
|
|
QString ParaChsName;// 参数中文名称
|
|
QString Description;// 参数描述
|
|
|
|
QString Datatype;// 数据类型 Value // 决定参数的输入类型
|
|
QString ParaType;// 参数类型 string
|
|
|
|
QString ValueStr;
|
|
|
|
public:
|
|
// 变量操作 get、set 函数
|
|
QString getParaName() const;
|
|
void setParaName(const QString& name);
|
|
QString getParaChsName() const;
|
|
void setParaChsName(const QString& name);
|
|
QString getDescription() const;
|
|
void setDescription(const QString& description);
|
|
QString getDatatype() const;
|
|
void setDatatype(const QString& datatype);
|
|
QString getParaType() const;
|
|
void setParaType(const QString& type);
|
|
QString getValueStr() const;
|
|
void setValueStr(const QString& value);
|
|
|
|
};
|
|
|
|
// 算法组件xml参数解析主类
|
|
class WBFZAlgComponetXmlParaseOperator :QObject
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
WBFZAlgComponetXmlParaseOperator(QObject* parent = nullptr);
|
|
~WBFZAlgComponetXmlParaseOperator();
|
|
void loadXmlFile(const QString& fileName);
|
|
|
|
private:
|
|
void parseXmlFile();
|
|
void displayParsedData();
|
|
|
|
private:
|
|
QString workSpacePath;
|
|
QString xmlFilePath;
|
|
private:// 参数文件结构
|
|
QDomDocument doc; // xml文档对象
|
|
QDomElement rootElement; // 根节点
|
|
QDomElement workSpaceElement; // 工作空间节点
|
|
QList<WBFZAlgComponetXmlParamenterItem*> ParameterList; // 参数列表
|
|
|
|
public:
|
|
QString getWorkSpacePath() const;// { return this->workSpacePath; } // 获取工作空间路径
|
|
void setWorkSpacePath(const QString& path);// { this->workSpacePath = path; } // 设置工作空间路径
|
|
QList<WBFZAlgComponetXmlParamenterItem*> getParameterList() const; // { return this->ParameterList; } // 获取参数列表
|
|
void setParameterList(const QList<WBFZAlgComponetXmlParamenterItem*>& list); //{ this->ParameterList = list; } // 设置参数列表
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif// __WBFZAlgComponetXmlParaseOperator_H__
|
|
|