Omnet++ 如何在omnet+;中获取模型的节点+;?
我创建的网络模型如下所示:Omnet++ 如何在omnet+;中获取模型的节点+;?,omnet++,inet,Omnet++,Inet,我创建的网络模型如下所示: httpController: HttpController { parameters: @display("is=s;p=98.8575,423.675;i=block/cogwheel"); } host[numclients]: StandardHost; server1: StandardHost { @display("i=device/s
httpController: HttpController {
parameters:
@display("is=s;p=98.8575,423.675;i=block/cogwheel");
}
host[numclients]: StandardHost;
server1: StandardHost {
@display("i=device/server;p=1400.145,223.94249");
}
server2: StandardHost {
parameters:
@display("i=device/server;p=1400.145,365.16748");
}
server3: StandardHost {
parameters:
@display("i=device/server;p=1400.145,488.235");
}
attacker1: StandardHost{
parameters:
@display("i=device/server;color=red");}
attacker2: StandardHost{
parameters:
@display("i=device/server;color=red");}
router0: Router {
parameters:
@display("i=abstract/router;p=1216.5525,365.16748");
}
router[numclients]: Router;
visualizer: IntegratedCanvasVisualizer {
@display("p=98.8575,254.205");
}
attacker1_router:Router;
attacker2_router:Router;
我还创建了一个简单的模块,在其类中具有以下C++函数:
void CoIDS::askForHelp(){
cTopology topo;
const char *typeNames[3];
typeNames[0] = "router";
typeNames[1] = "host";
typeNames[2] = nullptr;
topo.extractByNedTypeName(typeNames);
此代码用于获取模型中的所有路由器和主机节点。
问题是我在topo.extractByNedTypeName(typeNames)处出错;
表示在类型名中存在错误,有时与方法本身有关。你能帮我吗?任何人都会提供帮助,我们将不胜感激。extractByNedTypeName()
定义为:
virtual void extractByNedTypeName (const std::vector<std::string>& nedTypeNames);
virtualvoid extractByNedTypeName(const std::vector&NedTypeName);
因此它需要std::vector
,而不是字符数组。参考资料:是正确的。你总是直指Jerzy D点,我很感激。