大恒相机开发实践(3)——参数设置

前言

这一部分的内容放在如何生成大恒相机的参数,但其实难点并不在我接下去写的部分。难点在于你获得了这个节点的Name,Attribute,你该如何根据节点的类型,从而得到对于的Item,也就是这个节点是Number型你就该生成一个Number型的Item,QString类型就生成QString类型的Item。这才是难点,不过,这篇文章并不打算讲这个,这篇文章涉及到的内容主要是你该如何生成那个节点而已,以后关于那个有机会再出一篇文章,但那是后话了。

正文

初始化配置信息

首先,先让整个函数,然后再慢慢解析,你可以先瞄个大概:

//初始化配置信息
void MConfigureDahengG3UC::InitConfigure(QString index,MDeviceAbstract *pDev)
{
   
    m_cCameraID = index;
    m_pDevice = dynamic_cast<MDeviceDahengG3UC*>(pDev);
    m_pNodeMap = new MNodeMap();
    m_pNodeMap->SetDeviceId(m_cCameraID);
    m_pNodeMap->SetConfigureObject(this);
    m_pSimplyNodeMap = new MNodeMap();
    m_pSimplyNodeMap->SetDeviceId(m_cCameraID);
    CreateDocXml();             //创建doc
    CreateSimplyDocXml();       //创建simply_doc
}

开始解析

  1. m_pNodeMap = new MNodeMap();整个语句是创建出整个节点。
  2. m_pNodeMap->SetConfigureObject(this);整个是创建出那个配置对象。
  3. 至于这里的Simply的类你们就不要管了 ,那个其实在把配置参数分成两个部分,一种是较为完整的,一种是除去一部分不常用的。

创建Xml节点

先给出完整的函数:

//创建doc
bool  MConfigureDahengG3UC::CreateDocXml()
{
   
    bool ret = false;
#ifdef WIN32_DAHENG_GEV

    if((Q_NULLPTR == m_pNodeMap))
    {
   
        qDebug()<<"MConfigureDahengG3UC::CreateDocXml m_pNodeMap is null";
        return ret;
    }
    if(m_pDevice->m_objDevicePtr.IsNull())
    {
   
        qDebug()<<"MConfigureDahengG3UC::CreateDocXml m_pDevice->m_objDevicePtr.IsNull";
        return ret;
    }

    GxIAPICPP::gxstring_vector featureNameList;
    GxIAPICPP::gxstring_vector featureRemoteNameList;
    CGXFeatureControlPointer featureControl = m_pDevice->m_objDevicePtr->GetFeatureControl();

    if(!featureControl.IsNull())
        featureControl->GetFeatureNameList(featureNameList);//获取第一个属性参数集合featureNameList

    CGXFeatureControlPointer featureControl2 = m_pDevice->m_objDevicePtr->GetRemoteFeatureControl();

    if(!featureControl2.IsNull())
        featureControl2->GetFeatureNameList(featureRemoteNameList);//获取第二个属性参数集合featureRemoteNameList

    //开始创建xml文件
    QDomDocument *m_doc = new QDomDocument(
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值