ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

双网口相机平台搭建C++(大恒水星)

2021-08-03 18:01:37  阅读:224  来源: 互联网

标签:大恒 GetInstance IGXFactory C++ GX 网口 vectorDeviceInfo GxIAPICPP 设备


这次并不满足我的使用,后面我又改成C开发了,C++开发只做到这里,当然也有很多参考价值,C开发也差不多,这里是X86的,因为和下位机的通信是32位的,也要变成X86的。

主要工作模块与功能:
在这里插入图片描述

创建基于对话框的MFC工程,生成FIRAAPP

在这里插入图片描述
在这里插入图片描述

配置引用头文件:
在这里插入图片描述
在这里插入图片描述
配置Lib文件:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
下面是用序列号打开设备的举例:

//打开设备,此处以序列号为例打开设备,序列号以实际设备为准。用户可以选择其他方式打开设备。

#ifdef_DEBUG

CGXDevicePointerobjDevicePtr = 

IGXFactory::GetInstance().OpenDeviceBySN("RN0001007012", GX_ACCESS_EXCLUSIVE);

//获取远端设备属性控制器

CGXFeatureControlPointer objFeatureControl = objDevicePtr->GetRemoteFeatureControl();

//设置心跳超时时间5分钟

objFeatureControl->GetIntFeature("GevHeartbeatTimeout")->SetValue(300000);

#endif

具体说明:需要注意上面这个打开方式有前提,而且心跳时间需要改或者用第二种方式重启:

在这里插入图片描述

注意事项:提供管理员身份运行才可以打开设备:
在这里插入图片描述

下面是打开相机的四种方式:

GxIAPICPP::gxdeviceinfo_vector vectorDeviceInfo;

IGXFactory::GetInstance().UpdateDeviceList(1000, vectorDeviceInfo);

 /*
SN为设备序列号

UserID为用户自定义名称(不支持UserID的设备此项为空字符串)

MAC为设备MAC地址(非千兆网相机此项为空字符串)

IP为设备IP地址(非千兆网相机此项为空字符串)
*/

if (vectorDeviceInfo.size()> 0)

{

//打开链表中的第一个设备

CGXDevicePointerobjDevicePtr;

GxIAPICPP::gxstringstrSN     = vectorDeviceInfo[0].GetSN();

GxIAPICPP::gxstringstrUserID = vectorDeviceInfo[0].GetUserID();

GxIAPICPP::gxstringstrMAC    = vectorDeviceInfo[0].GetMAC();

GxIAPICPP::gxstringstrIP     = vectorDeviceInfo[0].GetIP();

//用户也可以直接指定打开的设备信息,下面代码中使用的信息为伪造信息,用户以实际设备为准

//GxIAPICPP::gxstring strSN     = "GA0140100002";

//GxIAPICPP::gxstring strUserID = "MyUserName";

//GxIAPICPP::gxstring strMAC    = "A1-0B-32-7C-6F-81";

//GxIAPICPP::gxstring strIP     = "192.168.0.100";

objDevicePtr = IGXFactory::GetInstance().OpenDeviceBySN(strSN, GX_ACCESS_EXCLUSIVE);

//objDevicePtr = IGXFactory::GetInstance().OpenDeviceByUserID(strUserID, GX_ACCESS_EXCLUSIVE);

//objDevicePtr = IGXFactory::GetInstance().OpenDeviceByMAC(strMAC, GX_ACCESS_EXCLUSIVE);

//objDevicePtr = IGXFactory::GetInstance().OpenDeviceByIP(strIP, GX_ACCESS_EXCLUSIVE);

}

标签:大恒,GetInstance,IGXFactory,C++,GX,网口,vectorDeviceInfo,GxIAPICPP,设备
来源: https://blog.csdn.net/weixin_51229250/article/details/119350431

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有