我需要在 omnet 中定义 3 种消息

发布于 2025-01-12 01:45:13 字数 82 浏览 1 评论 0原文

我想在omnet中定义3种消息 我知道我必须使用 messagekind 但我不能 请帮我 我想要帮助消息、控制消息和作业,应该处理哪些作业 太感谢了

I want to define 3 kinds of messages in omnet
I know I have to use messagekind but I couldnt
please help me
I want help message, control message and jobs, which jobs should be processed
thank you so much

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

若沐 2025-01-19 01:45:13

创建三个消息类后,在一个类(例如 DemoLayer)中,您需要在 .h 文件中进行 2 处更改,在 .cc 文件中进行 1 处更改。

在.h文件中,
在 public 说明符下添加

enum DemoMessageKinds {
    SEND_DATA-MESSAGE,
    SEND_CONTROL-MESSAGE,
    SEND_JOB-MESSAGE
};

并在 protected 说明符下添加

void handleSelfMsg(cMessage* msg) override;

在 .cc 文件中,添加

void DemoLayer::handleSelfMsg(cMessage* msg)
{   
   switch (msg->getKind()) 
   {
      case SEND_DATA-MESSAGE: 
      {
        ControlMessage* cm = new ControlMessage();
        ....//

例如,检查此 https://github.com/sommer/veins/tree/master/src/veins/modules/application/ieee80211p

After creating the three message classes, in a class, say DemoLayer, you need 2 changes in .h file and 1 in .cc file.

In .h file,
under the public specifier add

enum DemoMessageKinds {
    SEND_DATA-MESSAGE,
    SEND_CONTROL-MESSAGE,
    SEND_JOB-MESSAGE
};

and under protected specifier add

void handleSelfMsg(cMessage* msg) override;

In .cc file, add

void DemoLayer::handleSelfMsg(cMessage* msg)
{   
   switch (msg->getKind()) 
   {
      case SEND_DATA-MESSAGE: 
      {
        ControlMessage* cm = new ControlMessage();
        ....//

For an example, check this https://github.com/sommer/veins/tree/master/src/veins/modules/application/ieee80211p

哭了丶谁疼 2025-01-19 01:45:13

OMNeT++ 模拟手册 以及 TicToc 教程
简而言之:

  1. 您必须创建一个新的 .msg 文件,例如 ControlMessage.msg,其中包含您的内容,例如:

    消息 ControlMessage {
      int 一些地址;
      // ...
    }
    
  2. 在您的 C++ 代码中,您必须添加以下内容行:

    <前><代码>#include“ControlMessage_m.h”

在编译期间,ControlMessage_m.h 是从 ControlMessage.msg 自动创建的)

Creating of messages is described in OMNeT++ Simulation Manual as well as in TicToc Tutorial.
In short:

  1. You have to create a new .msg file, for example ControlMessage.msg, with your content, for example:

    message ControlMessage {
      int someAddress;
      // ...
    }
    
  2. In your C++ code you have to add the following line:

    #include "ControlMessage_m.h"
    

(during compilation ControlMessage_m.h is automatically created from ControlMessage.msg)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文