GenIcam标准(六)
2.9.可用的接口
本章用伪代码列出在2.3章介绍过的最重要的接口。对每个接口,实际的实现可以提供更多的方法,例如,除了SetValue(value)方法,还可以用直接映射到SetValue()的方式来实现operator=(value)方法。而且,实际的变量类型也可以不一样,例如,相对于伪代码中的类型string,实际的实现可以是Cstring,std::string或其它的类型。
在第2.8章可以找到更完整的解释。
2.9.1.IInteger接口
l int64 GetValue() – 返回值
l void SetValue( int64 ) – 设定值
l int64 GetMin() – 返回最小值
l int64 GetMax() – 返回最大值
l int64 GetInc() – 返回increment
l ERepresentation GetRepresentation() – 返回枚举型一样的数据
2.9.2.IFloat接口
l double GetValue() – 返回值
l void SetValue( double ) –设定值
l double GetMin() –返回最小值
l double GetMax() –返回最大值
l ERepresentation GetRepresentation() –返回枚举型一样的数据
l string GetUnit() – 返回单位
2.9.3.IString接口
l string GetValue() –返回值
l void SetValue( string ) –设定值
l int64 GetMaxLenght() – 返回字符串的最大长度
2.9.4.IEnumeration接口
l string GetStringValue() – 把枚举型当做字符串返回
l void SetStringValue( string ) –把枚举型当做字符串设置
l int64 GetIntValue() – 返回枚举数据相对应的索引值
l void SetIntValue( int64 ) –设置枚举数据相对应的索引值
l EnumEntryList GetEntries() – 返回一个指向枚举型的EnumEntry节点的指针的列表
2.9.5.ICommand接口
l void Execute() – 执行这个命令
l boolean IsDone() – 如果命令已经执行,返回true;还在执行,返回false
2.9.6.IBoolean接口
l boolean GetValue() – 返回值
l void SetValue( boolean ) –设定值
2.9.7.IRegister接口
l void Get( uint8 *pBuffer, int64 Length ) – 取得寄存器的内容,放入缓冲区
l void Set( uint8 *pBuffer, int64 Length ) – 从缓冲区取出数据,设置寄存器内
l int64 GetAddress() – 取得寄存器的地址
l int64 GetLength() – 取得寄存器的长度,单位字节
2.9.8.ICategory接口
l NodeList GetFeatures() – 返回一个指向属性节点的指针的列表
2.9.9.IPort接口
l void Read( uint8 *pBuffer, int64 Address, int64 Length ) – 从设备上读一组字节,读的位置是 [Address, Address+Length]
l void Write( uint8 *pBuffer, int64 Address, int64 Length ) – 写一组字节到设备上,写的位置是 [Address, Address+Length]
2.9.10.ISelector接口
l boolean IsSelector() – 说明节点是否是一个选择器
l NodeList GetSelectedFeatures() – 返回一个指针的列表,指针指向由当前节点选择的属性节点
2.10.标准属性列表
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标准(六)的更多相关文章
- GenIcam标准(四)
2.8.可用的节点类型 本章对每个可用的节点类型提供一个概要的描述,包括其功能.用途以及最关心的参数.另外,对于每个节点在GenICam标准的XML格式文件中的layout,会有一个正式的说明.这个格 ...
- GenIcam标准(二)
2 GenApi模块 – 配置相机 2.1. 简介 GenApi模块解决如何去配置相机的问题.主要的思路是,让相机生产厂商为他们的相机提供机器可以识别的产品说明.这些相机描述文件(camera ...
- GenIcam标准(一)
1.概述 如今的数码摄相机包含了很多的功能,而不仅仅是采集图像.对于机器视觉相机来说,处理图像并把结果附加到图像数据流上,控制附加的硬件,代替应用程序作实时的处理等都是很平常的事情.这也导致了相机的编 ...
- GenIcam标准(三)
2.6. 缓存 如果某个实现对每个写操作支持范围.实现和可用状态的检查,通常会触发一系列对相机的读操作.大多数用于有效性检查的数值很少或不会发生变化,所以可以放入缓存.相机描述文件包含所有必需的定义以 ...
- GenIcam标准介绍
GenICam TM的目标是为各种相机和设备提供通用编程接口.无论他们使用什么接口技术(GigE Vision,USB3 Vision,CoaXPress,Camera Link HS,Camera ...
- GenIcam标准(五)
2.8.10.Enumeration, EnumEntry Enumeration节点把一个名称(name)映射到一个索引值(index value),并实现Ienumeration接口.Enumer ...
- GenIcam标准关键词整理
1.<?xml> 版本信息和编码方式 IntSwissKnife 需计算和判断的节点 MaskedIntReg 需查询的节点 2.<RegisterDescription> 寄 ...
- 机器视觉必知-GenICam相机通用接口标准
机器视觉必知-GenICam相机通用接口标准 GenICam(相机通用接口): 一种通用软件接口 通用相机接口标准 目前机器视觉行业所使用的相机几乎均以相同方式来进行配置,即:---通过在注册表中的读 ...
- Delphi编码规范
以下是在之前的公司与别人共同参与制定的Delphi开发规范(5年前了,那时用的还是Delphi7,部分规则可能有些过时,但不整理了,觉得有用的人,自己整理成适合自己的开发规范吧), 目 录一.序 ...
随机推荐
- MyBatis数据持久化(四)类型别名
Mybatis的类型别名指的是我们可以为Java类型自定义一个简短的名字,以达到简化配置的目的,在上篇博文中我们的sql语句配置文件内容如下: <?xml version="1.0&q ...
- JavaScript学习——使用JS完成省市二级联动
1.我们希望在注册页面中添加一个字段(籍贯),当用户选择一个具体的省份,在后面的下拉列表中动态加载该省份下所有的城市.显示的效果如下: 2.步骤分析: 第一步:确定事件(onchange)并为其绑定一 ...
- load多个数据文件的yaml
VERSION: 1.0.0.1DATABASE: testUSER: adminHOST: node31PORT: 5432GPLOAD: INPUT: - SOURCE: LOCAL_HOSTNA ...
- 【转载】大型系统中使用JMS优化技巧
[本文转自:http://www.javabloger.com/article/sun-openmq-jms-large-scale-systems.html] 我们先来看看在Sun OpenMQ系统 ...
- ActiveMQ学习笔记(11)----ActiveMQ的动态网络连接
1. 多播协议multicast ActiveMQ使用Multicast协议将一个Service和其他的Broker是我Service里连接起来.IP Multicast是一个被用于网络中传输数据到其 ...
- 优动漫PAINT-凌霄花画法
再见小清新~这次教程教授的是凌霄花的画法!话说这个作者的花卉系列都很米粒啊~配色什么的,赞到没话说~ 教程是简单,呃.... 没有优动漫PAINT软件肿么办? 别着急,╭(╯^╰)╮ 小编给你送来了 ...
- 在yii2.0中封装一个生成验证码的控制器
frontend目录下/封装的验证码类: <?php namespace frontend\controllers; use yii\base\Controller; class CapathC ...
- 解决com.mysql.jdbc.PacketTooBigException: Packet for query is too large问题
2017年05月10日 09:45:55 阅读数:1659 在做查询数据库操作时,报了以上错误,原因是MySQL的max_allowed_packet设置过小引起的,我一开始设置的是1M,后来改为了2 ...
- HTTP——学习笔记(6)https
HTTP+加密+认证+完整性保护=HTTPS HTTP是一种新协议吗?: 不是,HTTPS只是HTTP通信接口部分用SSL和TLS协议代替而已 HTTP中,身处应用层的HTTP直接和TCP通信.而在使 ...
- C语言程序设计:现代方法阅读笔记
第二十六章 atexit函数允许用户“注册”在程序终止时要调用的函数:atexit(func); 在程序终止后,func函数会被自动调用 clock()函数可以计算程序运行时间 time函数返回当前的 ...