我想使用签名访问NetDevice的接收回调中的WiFiPhy。
typedef Callback< bool, Ptr<NetDevice>, Ptr<const Packet>, uint16_t, const Address & > ReceiveCallback;
在回调内部,我正在将NetDevice像WiFiPhy函数一样投射到WiFiDevice。
Ptr<WifiNetDevice> wifiNetDevice = DynamicCast<WifiNetDevice>(device);
Ptr<WifiPhy> wifiPhyDev = wifiNetDevice->GetPhy();
但是我在运行过程中遇到了细分错误?我在这里实际上在做什么错?
谢谢
最佳答案
好的,我找到了..当您创建一个NetDeviceContainer时,该对象的类型为NetDevice,它没有任何WifiPhy。解决方案是将其动态投射到WifiNetDevice并发送帧。
Ptr<WifiNetDevice> wifiNetDevice = DynamicCast<WifiNetDevice>(netDevice);
关于c++ - 从NS3中已撤销的回调访问WiFiPhy,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47183955/