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. |