DAWorkbench 0.0.1
DAWorkbench API
载入中...
搜索中...
未找到
DA::DAXMLProtocol类 参考

SA XML协议的读写类 sa xml协议主要用于保存qvariant类型数据,形如 更多...

#include <DAXMLProtocol.h>

类 DA::DAXMLProtocol 继承关系图:
DA::DAAbstractProtocol DA::DAXMLConfig

class  PrivateData
 

Public 成员函数

 DAXMLProtocol (const DAXMLProtocol &other)
 
 DAXMLProtocol (DAXMLProtocol &&other)
 
DAXMLProtocoloperator= (const DAXMLProtocol &other)
 
virtual void setFunctionID (int funid)
 setFunctionID 设置协议功能号
 
virtual int getFunctionID () const
 getFunctionID 获取协议功能号
 
virtual void setClassID (int classid)
 setClassID 设置协议类号
 
virtual int getClassID () const
 getClassID 获取协议类号
 
virtual void setValue (const QString &groupName, const QString &keyName, const QVariant &var)
 设置键值
 
virtual void setValue (const QString &keyName, const QVariant &var)
 
virtual QStringList getGroupNames () const
 获取所有目录关键字
 
virtual QStringList getKeyNames (const QString &groupName) const
 获取目录下对应的所有关键字
 
QStringList getKeyNames () const
 从默认分组中获取key值
 
virtual bool fromString (const QString &str)
 从字符串转换到协议
 
virtual QString toString () const
 转换为文本
 
virtual bool fromByteArray (const QByteArray &data)
 设置协议的内容
 
virtual QByteArray toByteArray () const
 转换为bytearray
 
virtual bool isHasGroup (const QString &groupName) const
 检测是否存在分组
 
virtual bool isHasKey (const QString &groupName, const QString &keyName) const
 检查在分组名下是否存在对应的键值
 
virtual QVariant getValue (const QString &groupName, const QString &keyName, const QVariant &defaultVal=QVariant()) const
 获取键值对应的内容
 
virtual QVariant getDefaultGroupValue (const QString &keyName, const QVariant &defaultVal=QVariant()) const
 从默认分组获取键值对应的内容
 
DAPropertiesGroup toPropGroup () const
 转换为SAPropertiesGroup
 
void fromPropGroup (const DAPropertiesGroup &props)
 从SAPropertiesGroup转换为xml协议
 
QString getErrorString () const
 获取错误信息
 

静态 Public 成员函数

static QString defaultGroupName ()
 

详细描述

SA XML协议的读写类 sa xml协议主要用于保存qvariant类型数据,形如

<sa>
<values>
<default-group>
<item type="int" name="value">1</item>
</default-group>
<group name="test">
<item name="a" type="int">1</item>
</group>
</values>
</sa>

协议所有内容在values下,values下需要有对应的组,组可以用户自定义

此类使用

参见
SAAbstractProtocolParser::setValue 函数进行变量的写入
QVariantList points;
points << QPointF(1,2)<< QPointF(1,3)<< QPointF(2,3)<< QPointF(4,5);
int sequenceID = 123;
SAXMLProtocolParser xml;
xml.setValue("value",1);
xml.setValue("g","point-size",points.size());
xml.setValue("g","sequenceID",sequenceID);
xml.setValue("g","points",points);

上诉输出结果为:

成员函数说明

◆ fromByteArray()

bool DA::DAXMLProtocol::fromByteArray ( const QByteArray &  data)
virtual

设置协议的内容

参数
data
返回
参见
toByteArray

实现了 DA::DAAbstractProtocol.

DA::DAXMLConfig 重载.

◆ fromPropGroup()

void DA::DAXMLProtocol::fromPropGroup ( const DAPropertiesGroup props)

从SAPropertiesGroup转换为xml协议

参数
props

◆ fromString()

bool DA::DAXMLProtocol::fromString ( const QString &  str)
virtual

从字符串转换到协议

参数
str
返回
参见
toString

实现了 DA::DAAbstractProtocol.

◆ getClassID()

int DA::DAXMLProtocol::getClassID ( ) const
virtual

getClassID 获取协议类号

返回

实现了 DA::DAAbstractProtocol.

◆ getDefaultGroupValue()

QVariant DA::DAXMLProtocol::getDefaultGroupValue ( const QString &  keyName,
const QVariant &  defaultVal = QVariant() 
) const
virtual

从默认分组获取键值对应的内容

参数
keyName键值名
defaultVal默认值(如果键值不存在,返回默认值)
返回

实现了 DA::DAAbstractProtocol.

◆ getErrorString()

QString DA::DAXMLProtocol::getErrorString ( ) const

获取错误信息

返回
参见
setProtocolData 返回false时调用

◆ getFunctionID()

int DA::DAXMLProtocol::getFunctionID ( ) const
virtual

getFunctionID 获取协议功能号

返回

实现了 DA::DAAbstractProtocol.

◆ getGroupNames()

QStringList DA::DAXMLProtocol::getGroupNames ( ) const
virtual

获取所有目录关键字

返回
包含默认分组

实现了 DA::DAAbstractProtocol.

◆ getKeyNames() [1/2]

QStringList DA::DAXMLProtocol::getKeyNames ( ) const

从默认分组中获取key值

返回

◆ getKeyNames() [2/2]

QStringList DA::DAXMLProtocol::getKeyNames ( const QString &  groupName) const
virtual

获取目录下对应的所有关键字

参数
groupName
返回

实现了 DA::DAAbstractProtocol.

◆ getValue()

QVariant DA::DAXMLProtocol::getValue ( const QString &  groupName,
const QString &  keyName,
const QVariant &  defaultVal = QVariant() 
) const
virtual

获取键值对应的内容

参数
groupName分组名
keyName键值名
defaultVal默认值(如果键值不存在,返回默认值)
返回
如果键值不存在,返回默认值,如果存在返回键值对应的内容

实现了 DA::DAAbstractProtocol.

◆ isHasGroup()

bool DA::DAXMLProtocol::isHasGroup ( const QString &  groupName) const
virtual

检测是否存在分组

参数
groupName分组名
返回

实现了 DA::DAAbstractProtocol.

◆ isHasKey()

bool DA::DAXMLProtocol::isHasKey ( const QString &  groupName,
const QString &  keyName 
) const
virtual

检查在分组名下是否存在对应的键值

参数
groupName
keyName
返回

实现了 DA::DAAbstractProtocol.

◆ setClassID()

void DA::DAXMLProtocol::setClassID ( int  classid)
virtual

setClassID 设置协议类号

参数
classid

实现了 DA::DAAbstractProtocol.

◆ setFunctionID()

void DA::DAXMLProtocol::setFunctionID ( int  funid)
virtual

setFunctionID 设置协议功能号

参数
funid功能号

实现了 DA::DAAbstractProtocol.

◆ setValue() [1/2]

void DA::DAXMLProtocol::setValue ( const QString &  groupName,
const QString &  keyName,
const QVariant &  var 
)
virtual

设置键值

参数
groupName分组名
keyName键值名
var
注解
斜杠是分组和键值的分割符,因此键值不应该存在斜杠,否则会有无法预料的结果

实现了 DA::DAAbstractProtocol.

DA::DAXMLConfig 重载.

◆ setValue() [2/2]

void DA::DAXMLProtocol::setValue ( const QString &  keyName,
const QVariant &  var 
)
virtual

实现了 DA::DAAbstractProtocol.

DA::DAXMLConfig 重载.

◆ toByteArray()

QByteArray DA::DAXMLProtocol::toByteArray ( ) const
virtual

转换为bytearray

返回
参见
fromByteArray

实现了 DA::DAAbstractProtocol.

◆ toPropGroup()

DAPropertiesGroup DA::DAXMLProtocol::toPropGroup ( ) const

转换为SAPropertiesGroup

返回

◆ toString()

QString DA::DAXMLProtocol::toString ( ) const
virtual

转换为文本

返回
utf8编码的文本

实现了 DA::DAAbstractProtocol.


该类的文档由以下文件生成: