29.可用的接口

本章用伪代码列出在2.3章介绍过的最重要的接口。对每个接口,实际的实现可以提供更多的方法,例如,除了SetValue(value)方法,还可以用直接映射到SetValue()的方式来实现operator=(value)方法。而且,实际的变量类型也可以不一样,例如,相对于伪代码中的类型string,实际的实现可以是Cstring,std::string或其它的类型。

在第2.8章可以找到更完整的解释。

291IInteger接口

l           int64 GetValue() – 返回值

l           void SetValue( int64 ) – 设定值

l           int64 GetMin() – 返回最小值

l           int64 GetMax() – 返回最大值

l           int64 GetInc() – 返回increment

l           ERepresentation GetRepresentation() – 返回枚举型一样的数据

292IFloat接口

l           double GetValue() – 返回值

l           void SetValue( double ) –设定值

l           double GetMin() –返回最小值

l           double GetMax() –返回最大值

l           ERepresentation GetRepresentation() –返回枚举型一样的数据

l           string GetUnit() – 返回单位

293IString接口

l           string GetValue() –返回值

l           void SetValue( string ) –设定值

l           int64 GetMaxLenght() – 返回字符串的最大长度

294IEnumeration接口

l           string GetStringValue() – 把枚举型当做字符串返回

l           void SetStringValue( string ) –把枚举型当做字符串设置

l           int64 GetIntValue() – 返回枚举数据相对应的索引值

l           void SetIntValue( int64 ) –设置枚举数据相对应的索引值

l           EnumEntryList GetEntries() – 返回一个指向枚举型的EnumEntry节点的指针的列表

295ICommand接口

l           void Execute() – 执行这个命令

l           boolean IsDone() – 如果命令已经执行,返回true;还在执行,返回false

296IBoolean接口

l           boolean GetValue() – 返回值

l           void SetValue( boolean ) –设定值

297IRegister接口

l           void Get( uint8 *pBuffer, int64 Length ) – 取得寄存器的内容,放入缓冲区

l           void Set( uint8 *pBuffer, int64 Length ) – 从缓冲区取出数据,设置寄存器内

l           int64 GetAddress() – 取得寄存器的地址

l           int64 GetLength() – 取得寄存器的长度,单位字节

298ICategory接口

l           NodeList GetFeatures() – 返回一个指向属性节点的指针的列表

299IPort接口

l           void Read( uint8 *pBuffer, int64 Address, int64 Length ) – 从设备上读一组字节,读的位置是 [Address, Address+Length]

l           void Write( uint8 *pBuffer, int64 Address, int64 Length ) – 写一组字节到设备上,写的位置是 [Address, Address+Length]

2910ISelector接口

l           boolean IsSelector() – 说明节点是否是一个选择器

l           NodeList GetSelectedFeatures() – 返回一个指针的列表,指针指向由当前节点选择的属性节点

210.标准属性列表

GenApi允许你根据名称、接口类型和含义,来定义抽象属性,并让它们为统一的API和GUI所接受。但是,GenApi不为某种特定的设备,例如相机,提供定义好的属性。这些标准属性列表是分开提供的。不过,GenApi通过NameSpace和StandardNameSpace属性的方式支持这些列表。(参见2.8.1)。

虽然创建标准属性列表的组织的工作并没有受到多少限制,GenApi本身定义了一些属性,这些属性必须在每个标准属性列表钟提供:

接口

名称

含义

ICategory

Root

属性树的root

IPort

Device

设备的默认端口

IBoolean

TLParamsLocked

Implements a flag served by the transport layer indication that it is set up for streaming.

GenIcam标准(六)的更多相关文章

  1. GenIcam标准(四)

    2.8.可用的节点类型 本章对每个可用的节点类型提供一个概要的描述,包括其功能.用途以及最关心的参数.另外,对于每个节点在GenICam标准的XML格式文件中的layout,会有一个正式的说明.这个格 ...

  2. GenIcam标准(二)

    2     GenApi模块 – 配置相机 2.1. 简介 GenApi模块解决如何去配置相机的问题.主要的思路是,让相机生产厂商为他们的相机提供机器可以识别的产品说明.这些相机描述文件(camera ...

  3. GenIcam标准(一)

    1.概述 如今的数码摄相机包含了很多的功能,而不仅仅是采集图像.对于机器视觉相机来说,处理图像并把结果附加到图像数据流上,控制附加的硬件,代替应用程序作实时的处理等都是很平常的事情.这也导致了相机的编 ...

  4. GenIcam标准(三)

    2.6. 缓存 如果某个实现对每个写操作支持范围.实现和可用状态的检查,通常会触发一系列对相机的读操作.大多数用于有效性检查的数值很少或不会发生变化,所以可以放入缓存.相机描述文件包含所有必需的定义以 ...

  5. GenIcam标准介绍

    GenICam TM的目标是为各种相机和设备提供通用编程接口.无论他们使用什么接口技术(GigE Vision,USB3 Vision,CoaXPress,Camera Link HS,Camera ...

  6. GenIcam标准(五)

    2.8.10.Enumeration, EnumEntry Enumeration节点把一个名称(name)映射到一个索引值(index value),并实现Ienumeration接口.Enumer ...

  7. GenIcam标准关键词整理

    1.<?xml> 版本信息和编码方式 IntSwissKnife 需计算和判断的节点 MaskedIntReg 需查询的节点 2.<RegisterDescription> 寄 ...

  8. 机器视觉必知-GenICam相机通用接口标准

    机器视觉必知-GenICam相机通用接口标准 GenICam(相机通用接口): 一种通用软件接口 通用相机接口标准 目前机器视觉行业所使用的相机几乎均以相同方式来进行配置,即:---通过在注册表中的读 ...

  9. Delphi编码规范

    以下是在之前的公司与别人共同参与制定的Delphi开发规范(5年前了,那时用的还是Delphi7,部分规则可能有些过时,但不整理了,觉得有用的人,自己整理成适合自己的开发规范吧), 目    录一.序 ...

随机推荐

  1. (转载) android快速搭建项目积累

    android快速搭建项目积累 2016-04-05 20:07 519人阅读 评论(0) 收藏 举报  分类: android优化(8)   Rx技术(5)  版权声明:本文为博主原创文章,未经博主 ...

  2. iF.svnadmin 安装遇到的坑

    iF.svnadmin 官网:http://svnadmin.insanefactory.com/ 安装配置iF.svnadmin : http://blog.linhere.com/archives ...

  3. NOIp模拟赛二十八

    (这是NOIp模拟赛?应该是NOI模拟赛不小心加了个p) 嗯,假装这是正经的NOIp模拟赛,从今天开始也写写题解吧(这几天被虐的惨惨) 今日情况:8+50+0=58 A题输出样例,B题正解写挂,C题不 ...

  4. 学习参考:《Python语言及其应用》中文PDF+英文PDF+代码

    学习简单的数据类型,以及基本的数学和文本操作,学习用Python内置的数据结构来处理数据: 掌握Python的代码结构和函数的用法:使用模块和包编写大规模Python程序:深入理解对象.类和其他面向对 ...

  5. Mysql学习总结(27)——Mysql数据库字符串函数

    注:sql的移植性比较强,函数的移植性不强,一般为数据库软件特有,例如mysql有mysql的函数,oracle有oracle的函数. 1.concat连接字符串: 从上图中可以看出,直接使用sele ...

  6. Mac OS X10.10_xcode6.1_ios8.1环境下,编译lame静态库libmp3lame.a,支持arm64 armv7s x86_64 i386 armv7指令集

    近期升级了系统到Mac OS X 10.10 而且更新了XCode6.1和iOS 8.1 之前app用到的libmp3lame.a静态库.也要支持64位的模拟器(x86_64)和64位的真机(arm6 ...

  7. Struts2学习(三)上传下载

    今天记录一下利用struts2实现上传下载,借此案例说明一下struts2的开发流程. 须要注意的是struts2版本号不同非常多地方的写法是不同的.本例使用struts2.3.15 .有差别的地方文 ...

  8. Java集合源代码剖析(一)【集合框架概述、ArrayList、LinkedList、Vector】

    Java集合框架概述 Java集合工具包位于Java.util包下.包括了非常多经常使用的数据结构,如数组.链表.栈.队列.集合.哈希表等.学习Java集合框架下大致能够分为例如以下五个部分:List ...

  9. 【递推DP】POJ1163The Triangle

    题目链接:http://poj.org/problem?id=1163 事实上这个题目有非常多解法,可是我们能够看下这个用一位数组的高效动规解法,这个我上课时老师讲的,非常不错. 先保存最后一行4 5 ...

  10. 陈-朱-兴- js写法【案例】:

    ajax请求: 一.从服务器端请求数据: var url = '';url = 'https://api.weixin.qq.com/sns/oauth2/access_token?appid='+ ...