OMNeT ++ 4.4でシミュレーションを実行しています。このノードでは、結果として基本的にタプルの結果が出力されます。タプルの値は相互に依存し、すべてのノードがそれらを出力します。すなわち、単一のシミュレーション時間に放出されるいくつかのそのようなタプルが存在する。タプルを単一のdouble値に「圧縮」することはできません。ベクトル結果レコーダーのタプルの記録
これらのタプルをベクターに記録したいと思います。統計収集用のデータ構造を生成し、OMNeT ++で作成された* .vecファイルに記録する方法はありますか?私はこの特定の信号のNEDファイルで利用可能な統計関数については気にしません。簡単な例
、私はどこかに私が放出したい信号のデータ型として
typedef boost::tuple<boost::DateTime, bool, Unit::Watt, Unit::VAr> MyTuple;
があるとします。最善の方法はまだへとどうなるか
vector 1 MyNodeName MyResultVectorName TV
1 14.126 2013-01-22T23:22:19+10:00 true 125300 12000
ことができない場合は、:のように、例えば、私のソースコード内の
MyTuple myTuple(/* ... data ... */);
emit(mySignal, myTuple);
を持っており、recular .vec
結果ファイルに記録する方法はありますOMNeTのシグナルメカニズムを使用しますが、出力ファイルを自分で作成しますか?
ありがとう、それは私が多くを助ける!結果ディレクトリのパスはどこから取得されますか?つまり、omnetpp.iniにスカラーファイルとベクトル結果ファイルが設定されていますか?私はベクトルファイルのスキーマを使用して、私のカスタム結果ファイルを同じディレクトリに配置し、同様に別の拡張子を付けて名前を付けたいと思います。 – Technaton
getEnvir() - > getConfig() - > getAsFilename(CFGID_OUTPUT_VECTOR_FILE).c_str()OMNeTのFileOutputVectorManagerで使用されるものです。 – Rudi
すごく、ありがとう! – Technaton