属性树提供的操作函数

设备的树状结构为设备的管理提供了一个类似文件系统的方式。设备的每一个具体的子设备映射为一个叶子节点,而每一个叶子节点可进行的操作在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;//分支
};

时间: 2025-01-21 01:20:17

属性树提供的操作函数的相关文章

直接操作USRP属性树

在multi_usrp.hpp中以API的方式为用户提供了对USRP的操作方法,用户可以定义usrp指针后直接调用这些方法:即usrp.xxx().然而,如果如果用户想进行API中没有提供的设置,就需要直接对USRP的属性树进行操作,通过属性树的根节点进入到叶子节点,然后调用叶子节点相应的方法:如usrp->get_device->get_tree()->access<type>("path").get()/set()等. 编译:g++ tree.cpp

python 文件操作api(文件操作函数)_python

python中对文件.文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块. 得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd() 返回指定目录下的所有文件和目录名:os.listdir() 函数用来删除一个文件:os.remove() 删除多个目录:os.removedirs(r"c:\python") 检验给出的路径是否是一个文件:os.path.isfile() 检验给出的路径是否是一个目录:os.path.isdir() 判断是否是绝对路

收藏了php数组的常用操作函数

PHP Array 函数 PHP:指示支持该函数的最早的 PHP 版本. 函数 描述 PHP array() 创建数组. 3 array_change_key_case() 返回其键均为大写或小写的数组. 4 array_chunk() 把一个数组分割为新的数组块. 4 array_combine() 通过合并两个数组来创建一个新数组. 5 array_count_values() 用于统计数组中所有值出现的次数. 4 array_diff() 返回两个数组的差集数组. 4 array_diff

php数组操作函数(合并,拆分,追加,查找,删除等)

PHP数组相关知识学习,要学习的主要有以下几点: 1.了解数组的感念: 2.掌握声明一维数组和二维数组的方法: 3.掌握如何输出数组: 4.掌握遍历数组的方法: 5.了解如何合并数组: 6.掌握进行字符串与数组之间的转换方法: 7.熟悉如何统计数组元素个数: 8.掌握丢数组排序的方法: 1. 合并数组 array_merge()函数将数组合并到一起,返回一个联合的数组.所得到的数组以第一个输入数组参数开始,按后面数组参数出现的顺序依次迫加.其形式为: array array_merge (arr

php文件目录操作函数学习笔记

文件操作函数 1.获取文件名:basename(); 2.获取文件所在的目录:dirname(); 3.pathinfo()获取文件信息,返回结果为一个array,包括路径.文件全名.文件名和扩展名.例如:  代码如下 复制代码 $file = '/com/netingcn/error.log'; print_r(pathinfo($file)); 结果为: Array(     [dirname] => /com/netingcn     [basename] => error.log   

PHP开发中常用的字符串操作函数

1,拼接字符串 拼接字符串是最常用到的字符串操作之一,在PHP中支持三种方式对字符串进行拼接操作,分别是圆点.分隔符{}操作,还有圆点等号.=来进行操作,圆点等号可以把一个比较长的字符串分解为几行进行定义,这样做是比较有好处的. 2,替换字符串 在PHP这门语言中,提供了一个名字叫做substr_replace()的函数,该函数的作用可以快速的完成扫描和编辑文本内容较多的字符串替换功能.他的语法格式: mixed substr_replace(mixed $string,string $repl

PCM音频设备的操作函数

对音频设备的操作主要是初始化音频设备以及往音频设备发送 PCM(Pulse Code Modulation)数据.为了方便,本文使用 ALSA(Advanced Linux Sound Architecture)提供的库和驱动.在编译和运行本文中的 MP3 流媒体播放器的时候,必须先安装 ALSA 相关的文件. 本文用到的主要对 PCM 设备操作的函数分为 PCM 设备初始化的函数以及 PCM 接口的一些操作函数. PCM 硬件设备参数设置和初始化的函数有: int snd_pcm_hw_par

C++语言基础-字串操作函数

如果你用过具有string数据类型的编程语言,你可能很不习惯,别人也有同感,所以标准C语言库中提供了几个字串操作函数.表1.3列出了最常用的字串操作函数及其用法说明.关于每个函数的详细说明和实例,见C++ Builder联机帮助. 表1.3字串操作函数 函数 说明 strcat() 将字串接合到目标字串的末尾 strcmp() 比较两个字串是否相等 strcmpi() 比较两个字串是否相等,不考虑大小写 strcpy() 将字串内容复制到目标字串中 strstr() 扫描字串中第一个出现的字串

socket属性设置与初始化操作

libevent是一个事件触发的网络库,适用于windows.linux.bsd等多种平台,内部使用select.epoll.kqueue等系统调用管理事件机制.著名分布式缓存软件memcached也是libevent based,而且libevent在使用上可以做到跨平台,而且根据libevent官方网站上公布的数据统计,似乎也有着非凡的性能. event_base 在使用Libevent之前,需要初始化一个event_base结构.每一个event_base结构提包含了events集合并选择