DALSA gige相机有两种方式可以获取到相机相关参数,一个是读取相机里面的xml文件;另外一个是读取相对应的寄存器的值。

对于修改寄存器的值,有两个相应的函数:

1)GevSetFeatureValue

函数原型为:

GEV_STATUS GevSetFeatureValue(GEV_CAMEAR_HANDLE handle, const char *feature_name, int value_size, void *value);

2)GevSetFeatureValueAsString

函数原型为:

GEV_STATUS GevSetFeatureValueAsString(GEV_CAMERA_HANDLE handle, const char *feature_name,  char *value_string);

两者之间端区别在于,GevSetFeatureValue 可以配置任意类型(支持的类型)的值,并且需要手动填写类型。而GevSetFeatureValueAsString 是固定为string类型,只需要填写相对应端值即可。

还有一个更重要的区别是,GevSetFeatureValue能够配置的项在文件 cameraregdata.c 中有对应,许多项配置不了,受制于结构体

typedef struct
{
    char                featureName[FEATURE_NAME_MAX_SIZE]; // String name of feature for this register.
    UINT32              address;         // Address for accessing feature in camera (NOREF_ADDR if not in camera).
    RegAccess           accessMode;     // RO, WO, RW access allowed.
    BOOL32              available;      // True if feature is available (in camera or not) - False is not available.
    RegType             type;           // String, Float, Integer, Enum, Bit
    UINT32              regSize;        // Size of storage for register (or register set / area).
    UINT32              regStride;    // Increment between register items accessed via selector
    UINT32              minSelector;    // Minimum value for selector (corresponds to base address).
    UINT32              maxSelector;    // Maximum value for selector.
    GENIREG_VALUE       value;    // Current value (storage for features not backed by a register).
    GENIREG_VALUE       minValue;    // Minimum allowable value.
    GENIREG_VALUE       maxValue;    // Maximum allowable value.
    UINT32              readMask;       // AND Mask for read (integers only)
    UINT32              writeMask;      // AND Mask for write (integers only)
    PGENICAM_FEATURE    feature;         // Pointer to feature in feature table (future).
    char                selectorName[FEATURE_NAME_MAX_SIZE]; // String name of selector for feature.
    char                indexName[FEATURE_NAME_MAX_SIZE]; // String name of index (second selector)for feature.
} GEV_REGISTER, *PGEV_REGISTER;

中accessMode 和 available 等属性。

而 GevSetFeatureValueAsString 却能够配置 featureName存在的项,能力远远大于 GevSetFeatureValue 。

DALSA相机开发--修改参数的更多相关文章

  1. Android相机开发那些坑

    版权声明:本文由王梓原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/168 来源:腾云阁 https://www.qclou ...

  2. android之相机开发

     http://blog.csdn.net/jason0539/article/details/10125017 android之相机开发 分类: android 基础知识2013-08-20 22: ...

  3. 2021升级版微服务教程7-OpenFeign实战开发和参数调优

    2021升级版SpringCloud教程从入门到实战精通「H版&alibaba&链路追踪&日志&事务&锁」 教程全目录「含视频」:https://gitee.c ...

  4. fiddler中断request,修改参数问题

    fiddler正在学习阶段,遇到了一个问题,就是bpu url后,不会修改参数,今天实验了几次,总算成功了 下面写一下步骤: 1.先打开fiddler 2.打开网站,如百度,在文本框输入1,记住!不要 ...

  5. c语言: 修改参数的地址,及注意事项

    如果需要在函数中修改参数的地址,首先参数肯定要是指针类型,同时传递的参数不能直接使用数组变量,至少需要先转换一下. 比如: char str[] = "123"; 不能直接传 ab ...

  6. SpringBoot(十):读取application.yml下配置参数信息,java -jar启动时项目修改参数

    读取application.yml下配置参数信息 在application.yml文件内容 my: remote-address: 192.168.1.1 yarn: weburl: http://1 ...

  7. [Oracle][Standby][PDB]在PDB中修改参数,设置范围为 SPFILE,报 ORA-65099错误

    [Oracle][Standby][PDB]在PDB中修改参数,设置范围为 SPFILE,报 ORA-65099错误 在Data Gaurd 的 Standby (或 CDB 是 Read Only ...

  8. RAC环境修改参数生效测试

    本篇文档--目的:实验测试在RAC环境下,修改数据库参数与单实例相比,需要注意的地方 --举例说明,在实际生产环境下,以下参数很可能会需要修改 --在安装数据库完成后,很可能没有标准化,初始化文档,没 ...

  9. mysql不重启修改参数变量

    分享下mysql不重启的情况下修改参数变量的方法. 通常来说,更新mysql配置my.cnf需要重启mysql才能生效,但是有些时候mysql在线上,不一定允许你重启,这时候应该怎么办呢? 例子: m ...

随机推荐

  1. JavaScript中的this指向规则

    首先,JavaScript的this指向问题并非传说中的那么难,不难的是机制并不复杂,而被认为不好理解的是逻辑关系和容易混淆的执行上下文.这篇博客也就会基于这两个不好理解的角度来展开,如要要严格的来对 ...

  2. Idea每次修改jsp都需要重启tomcat解决方法

  3. oldboy s21day04

    #!/usr/bin/env python# -*- coding:utf-8 -*- # 1.简述解释型语言和编译型语言的区别?"""1.解释型语言:Python,PH ...

  4. Lua Doc生成工具

    Luadoc http://keplerproject.github.io/luadoc/ Overview LuaDoc is a documentation generator tool for ...

  5. C# WinForm多线程(一)----- Thread类库

    Windows是一个多任务的系统,如果你使用的是windows 2000及其以上版本,你可以通过任务管理器查看当前系统运行的程序和进程.什么是进程呢?当一个程序开始运行时,它就是一个进程,进程所指包括 ...

  6. Hbase思维导图之逻辑结构

  7. python笔记---数据基础类型

    s = 'laonanHai' s1 = s.capitalize() #首字母大写,其他字母小写 s2 = s.upper() #全部大写 s3 = s.lower() #全部小写 print(s, ...

  8. 修改element表格组件的样式

    最近在开发一个项目,使用到了element中的表格组件,但是该组件的样式不是我们想要的样式,需要自己再调整,但是常常会遇到自己设置的样式无效,我使用的技术是Vue开发的 1. 页面使用了三栏布局,最右 ...

  9. LinkedHashMap实现LRU缓存算法

    LinkedHashMap的get()方法除了返回元素之外还可以把被访问的元素放到链表的底端,这样一来每次顶端的元素就是remove的元素. 构造函数如下: public LinkedHashMap  ...

  10. Angular4

    1.安装node.js 官网下载安装 npm会跟着被自动安装 2.安装Angular工具(AngularCli) 1.使用npm安装 npm install -g @angular/cli 2使用cn ...