如何在 Omnetpp 中获取节点之间的跃点数

问题描述

我想使用 cTopology 类对象获取节点之间的跳数。我使用以下代码

  cTopology topo;
  cTopology::Node *node ;

  topo.extractByNedTypeName(cStringTokenizer("inet.node.inet.StandardHost inet.node.inet.Router inet.node.ethernet.Eth100M").asvector());
  cTopology::Node *thisNode = topo.getNodeFor(this);


  for (int i = 0; i < topo.getNumNodes(); i++) {
      node= topo.getNode(i);
  if (node == thisNode) { // skip ourselves
           continue;}
  node->enable();
  topo.calculateUnweightedSingleShortestPathsTo(node);
  for (int j = 0; j < node->getNumOutLinks(); j++) {
      cTopology::Node *neighbour = node->getLinkOut(j)->getRemoteNode();
      cGate *gate = node->getLinkOut(j)->getLocalGate();
      neighbour->getModule()->getFullPath();}
  store_traffic_textFile(this->getFullPath(),std::to_string(node->getdistancetoTarget()));
      }

`store_traffic_textFile() 用于存储结果而不是标准输出(屏幕)。 问题是我一直通过 getdistancetoTarget() 得到零;

任何帮助将不胜感激。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)