Omnet++ 在Omnetpp中收集不同运行的结果时出现问题

Omnet++ 在Omnetpp中收集不同运行的结果时出现问题,omnet++,Omnet++,从2.X版到4.X版,我能够通过自己重新实现的cIOutputScalarManager成功地记录标量,这使我能够将所有运行的结果存储在cLongHistogram/cDoubleHistogram类的相同实例中,我重新实现的cIOutputScalarManager在内部使用这些类。我使用OMNeT++进行瞬态分析,因此我需要许多不同运行(大多数情况下为100000次运行)的平均结果来获得所需的绘图,但是在5.X版中,每次运行都会从头开始重新实例化整个cIOutputScalarManager

从2.X版到4.X版,我能够通过自己重新实现的cIOutputScalarManager成功地记录标量,这使我能够将所有运行的结果存储在cLongHistogram/cDoubleHistogram类的相同实例中,我重新实现的cIOutputScalarManager在内部使用这些类。我使用OMNeT++进行瞬态分析,因此我需要许多不同运行(大多数情况下为100000次运行)的平均结果来获得所需的绘图,但是在5.X版中,每次运行都会从头开始重新实例化整个cIOutputScalarManager,因此,不是所有运行的结果,最后我只会从上次运行中获得结果:(我如何才能恢复为所有运行使用一个相同的cIOutputScalarManager,而不是为每个运行使用一个单独的cIOutputScalarManager(特别是在考虑并行执行运行时,在我的情况下,并行执行不会破坏结果,因为实际上我需要所有运行的平均值)


感谢您提出的任何有助于解决此问题的想法。

如果您确实需要收集所有运行的统计数据(就我所见,您的用例证明了这一点)然后,您仍然可以基于
cIOutputScalarManager
实现您自己的管理器,但在该对象中,您可以将所有工作委托给管理器的静态实例。即,使用单例设计模式并将所有工作委托给该单个实例。

您能否特别提供
cI的实现OutputScalarManager