属性树提供的操作函数

简介:

设备的树状结构为设备的管理提供了一个类似文件系统的方式。设备的每一个具体的子设备映射为一个叶子节点,而每一个叶子节点可进行的操作在property_tree API(property_tree.hpp)中给出。

可以进行的操作有:

1、static sptr make(void);  创建新的、空的属性树

2、sptr subtree(const fs_path &path) const = 0;以当前节点为根节点,创建子树

3、void remove(const fs_path &path) = 0;删除属性或递归删除

4、bool exists(const fs_path &path) const = 0;判断属性树中是否存在某个节点

5、std::vector<std::string> list(const fs_path &path) const = 0;得到给定路径的所有节点

6、template <typename T> property<T> &create(const fs_path &path);在属性树中创建新的入口

7、template <typename T> property<T> &access(const fs_path &path);进入属性树中的某条路径

注:上述函数中的fs_path类型为包含分支和叶子的结构体,其定义如下:

struct fs_path : std::string{
    UHD_API fs_path(void);
    UHD_API fs_path(const char *);
    UHD_API fs_path(const std::string &);
    UHD_API std::string leaf(void) const;//叶子
    UHD_API fs_path branch_path(void) const;//分支
};

目录
相关文章
|
10月前
|
存储 算法 数据可视化
关于B+树的介绍、用途和c++代码实现
关于B+树的介绍、用途和c++代码实现
|
前端开发
el-tree懒加载中使用递归更改树节点状态值
el-tree懒加载中使用递归更改树节点状态值
142 0
计算属性的基本操作和复杂操作
计算属性的基本操作和复杂操作
59 0
|
JavaScript
树形组件(可动态添加属性、无限嵌套)及递归展示tree数据
树形组件(可动态添加属性、无限嵌套)及递归展示tree数据
树形组件(可动态添加属性、无限嵌套)及递归展示tree数据
C结构中包含自己的嵌套定义
C结构中包含自己的嵌套定义
51 0
|
JavaScript
DOM内部插入
DOM内部插入
55 0
html+css实战120 属性顺序
html+css实战120 属性顺序
70 0
html+css实战120 属性顺序
|
索引
属性遍历,会了又没完全会
我们来归类下,这些都属于哪些属性分类。 了解属性分类以后,让我们再想想 我们又如何获取person 对象的所有属性呢??
89 0
属性遍历,会了又没完全会
如何将两个数组对象的相同属性进行操作(更简洁)
我们以前可以使用双循环,来判断条件,达到目的,这里我们使用更简洁的方法: 合并数组,然后通过obj[v.name]=obj[v.name]===undefined)判断其条件,将两个数组对象的相同属性将对应的type变为1。
|
JavaScript
一个包含嵌套递归数据结构的对象的排序实现
一个包含嵌套递归数据结构的对象的排序实现
74 0
一个包含嵌套递归数据结构的对象的排序实现