opnet 复合属性

       opnet的复合属性可真是复杂啊,今天为了更改opnet的传输机的输出功率,发现一些问题。

       要改输出功率power,发现,它是无线节点传输机rt的channel下的一个属性,如果简单的是rt的一个属性也到罢了,但是牵扯到了它的复合属性,很扯淡。

      首先,使用如下代码;

                 tx_id = op_id_from_name(op_topo_parent(op_id_self()),OPC_OBJTYPE_RATX,"rt_0");

                   ch_id = op_topo_child(tx_id,OPC_OBJTYPE_COMP,0);

                  op_ima_obj_attr_set(ch_id,"power",trans_power);

     报错说power不是channel的属性,函数op_ima_obj_attr_set出错,然后将代码换成如下内容,

                 tx_id = op_id_from_name(op_topo_parent(op_id_self()),OPC_OBJTYPE_RATX,"rt_0");

                   ch_id = op_id_from_name(tx_id,OPC_OBJTYPE_COMP,"channel");

                  op_ima_obj_attr_set(ch_id,"power",trans_power);     

     发现结果是一样的,使用odb调试发现,rt的channel的id是12,但是通过第二句获得的id却是11,很郁闷,不知道是那里的原因;最后尝试加入了代码

                 ch_id = ch_id +1;

     结果ok。

     不知道是opnet的问题,还是那个函数使用有问题。

你可能感兴趣的:(c,职场,休闲,OPNET)