添加gpcr

//先实现不变内容的,添加一个gpsr协议实质的,gpcr选项。

1、改process model:
   另存gpsr_my_test -> gpcr_my_test;
   在manet_mgr_my_test中declare child process,添加上这个子进程

2、改gpcr_my_test:将里面的文件中的gpsr换名为gpcr(entrance,exit,sv,gv)
   改头文件和外部文件(C:\Program Files\OPNET\14.5.A\models\std\)中的gpcr
   //注意区分大小写替换
   //重名的问题!
   //注意修改sv中的数据类型,因为头文件数据类型变了

结构:gpcr.h
Node-》GpcrNode,
NodePtr-》GpcrNodePtr
neighborTableEnt -》 GpcrNeighborTableEnt
MyNode -》 GpcrMyNode;
DealingPacket -> GpcrDealingPacket;

函数名(参数类型Gpcr)前加:gpcr_ptypes.h

函数体gpcr:gpcr_support.ex.c

包格式:gpcr_pk.m

在gpcr的process model中declare一下gpcr的外部文件。

编译进程模型。


3、在manet_mgr_my_test中有gpsr的部分添加上gpcr
   改完编译有错,主要是几个关于Gpcr的宏不在这里定义。在上一层定义。

4、在ip_dispatch_my_test有gpsr的部分添加上gpcr
   FB
   ip_rte_v4.h , ip_higher_layer_proto_reg_sup.h, ip_cmn_rte_table.h。
   ip_rte_support.h && ip_rte_support.ex.c :编译下这个外部文件。
   编译进程模型

5、现在呢,具体里面的东西都改好了。现在就是要看看仿真的时候还缺啥了——GPCR的

tab。
    1)首先呢,我们给gpcr的local statistic 和 global statistics 改一下组group

名字:GPCR。编译该进程模型。~
    2)然后,我们在 manet_station_adv_my_test 这个节点模型里:修改node

statistics:加上gpcr的数据。
     可能呢需要编译一下仿真场景。
     这个时候为神马在仿真场景的global和node里就出现了GPSR这个tab。
// 编译是出现错误:
<<< Recoverable Error >>>
Object repository construction failed
due to errors encountered by the binder program (bind_so_msvc)
T (0), EV (-), MOD (NONE)
具体下面写的是:
unresolved externals
——解决:在gpcr的process model中declare一下gpcr的外部文件。

6 然后呢就是在节点中能够选择GPCR这个协议选项卡要做的事情了。

  在manet那一级的进程模型中,添加model attribute,加上GPCR,里面的具体Edit properties设置同AODV。(注意,先设置每个参数的Edit properties,最后统一设置Edit row和Edit Column);然后再model attribute 的第一行里添加GPCR这一选项、编译后,在仿真场景里的节点-edit attribute选择protocol就出现了GPCR这一项了。
 
//将这个gpcr的实质内容改过去

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值