如何在UDPBAsicApp消息中获得基于INET的WirelessHost速度



有一个wirelessHost,它通过APstandardHost通信。wirelessHostLinearMobility中移动,speedini中配置为40mps。现在我想得到UDPBasicApp中的速度值,这个值应该发送给接收器(standardHost(。

注意:我使用的是inet 3.6.7和omnet++5.5.1。

最简单的方法是从Udp应用程序模块直接访问移动模块。Appp和移动模块是主机模块的子模块。因此,您需要在UDP模块中编写以下内容:

cModule* mobilityMod = getParentModule()->getSubmodule("mobility", 0);

通常移动性是移动性模块的名称,如果它有另一个名称,则必须在getSubmodule()功能中更改它。您可以制作dynamic_cast来评估移动性的tyoe,并可以访问其内部功能。例如:

dynamic_cast<LinearMobility*>(mobilityMod)->getSpeed();

CCD_ 11或任何其它getter或setter函数。此链接中的更多帮助:https://doc.omnetpp.org/omnetpp/api/classomnetpp_1_1cModule.html

最新更新