理解 omnet++ 和 veins 中的 .msg 文件
Understanding .msg files in omnet++ and veins
我真的是 Omnet++
和 Veins
的新手。我发现即使提供了所有文档,也很难通过 Omnet++
和 Veins
取得进展。现在我对 .msg 文件是如何生成的以及消息是如何在 veins 中处理的感到困惑。有人可以帮助我 documentation/tutorials/pointers 真正理解这些概念吗?这真的很有帮助我经常出去,因为我想自己学习这个,到目前为止,这对我来说是一项非常艰巨的任务。
提前致谢
在 OMNeT++ 中 .msg
文件不是生成的,它们是由开发人员创建的。
假设需要一条包含两个字段的消息:目标地址(一个整数)和序列号(一个整数)。我们将此类型命名为 FooMessage
。创建一个名为 FooMessage.msg
的新文件,内容如下:
// FooMessage.msg
message FooMessage {
int destAddress;
int seqNumber;
}
在构建此项目期间,自动 创建了两个新文件:FooMessage_m.h
和 FooMessage_m.cc
。它们包含消息的 C++ class 以及所有 setter 和 getter 方法。
要使用它们,应该在自己的 C++ 代码中编写类似这样的代码:
#include "FooMessage_m.h"
FooMessage *msg = new FooMessage("First message");
msg->setDestAddress(230);
msg->setSeqNumber(1);
TicToc Tutorial contains more advance example. Moreover, OMNeT++ Simulation Manual, Section 6描述了消息定义的过程。
我真的是 Omnet++
和 Veins
的新手。我发现即使提供了所有文档,也很难通过 Omnet++
和 Veins
取得进展。现在我对 .msg 文件是如何生成的以及消息是如何在 veins 中处理的感到困惑。有人可以帮助我 documentation/tutorials/pointers 真正理解这些概念吗?这真的很有帮助我经常出去,因为我想自己学习这个,到目前为止,这对我来说是一项非常艰巨的任务。
提前致谢
在 OMNeT++ 中 .msg
文件不是生成的,它们是由开发人员创建的。
假设需要一条包含两个字段的消息:目标地址(一个整数)和序列号(一个整数)。我们将此类型命名为 FooMessage
。创建一个名为 FooMessage.msg
的新文件,内容如下:
// FooMessage.msg
message FooMessage {
int destAddress;
int seqNumber;
}
在构建此项目期间,自动 创建了两个新文件:FooMessage_m.h
和 FooMessage_m.cc
。它们包含消息的 C++ class 以及所有 setter 和 getter 方法。
要使用它们,应该在自己的 C++ 代码中编写类似这样的代码:
#include "FooMessage_m.h"
FooMessage *msg = new FooMessage("First message");
msg->setDestAddress(230);
msg->setSeqNumber(1);
TicToc Tutorial contains more advance example. Moreover, OMNeT++ Simulation Manual, Section 6描述了消息定义的过程。