我阅读了手册,并在手册中使用了伪代码描述了伪代码,该伪代码首先进行了仿真步骤,当仿真开始是从系统模块到子模块的“网络初始化”时。在仿真示例中,我有“ simulation.ned”,它用于定义一些仿真变量和package.ned,其中我定义了网络。
问题是:
仿真开始时,omnet如何初始化模块(maybee会搜索所有* .ned文件以创建完整的网络)?
创建模块时,他等待所有子模块生成还是立即应用配置(initialize()方法)还是等待所有模块创建然后继续配置?
谢谢
答案 0 :(得分:0)
在模拟准备期间(在处理第一个事件之前),执行以下步骤:
模拟环境调查from ffmpy import FFmpeg
ff = FFmpeg(inputs={'input.wmv': None}, outputs={'output.mp4': None})
ff.cmd
'ffmpeg -i input.ts output.mp4'
ff.run()
并检查omnetpp.ini
的名称,例如:
network
模拟环境将扫描[General]
network = ARPTest
个文件并查找包含以下内容的文件:
NED
模拟环境为该网络中提到的所有子模块调用network ARPTest {
// ...
}
。有the important rule:
复合模块的
initialize()
函数先于其子模块运行 。
initialize()
中有使用multi stage initialization的机会。如果一个子模块在没有其他子模块的某些信息的情况下无法初始化,则非常有用,例如:路由子模块需要主机接口的地址进行初始化。