OMNET发送消息

时间:2013-11-20 22:15:56

标签: c++ omnet++

我正在尝试将一个程序集成到OMNET,并从特定类中创建的方法发送消息。此方法调用Module中的另一个方法。 以下代码描述了我想要做的事情。

    #include "Txcc.h"

    Define_Module(Txcc);
 Txcc::Txcc() {
// TODO Auto-generated constructor stub

 } 

Txcc::~Txcc() {
// TODO Auto-generated destructor stub

  }

void Txcc::initialize()
{
// Am I tuc
ev << "XXXXX  INITILIZING XXXXX\n";


  }

 void Txcc::handleMessage(cMessage *msg)
 {
    ev << " message received " << endl;

  }

    void Txcc::finish() {
    printf("%s\n", " finishing ....");

  }

   // -----------------------------------------------------
   void Txcc::submitMessageQueue() {

     printf("%s\n", "***************************");
      printf("%s\n", "Message submitted ...");
       printf("%s\n", "***************************");
    cMessage *Mess = new cMessage();
cSimpleModule::send(Mess,"out");

   }
     // --------------------------------------------------------

调用submitMessageQueue的代码片段是:     .....        Txcc发射器;         Transmitter.submitMessageQueue();

调用此方法时,模拟会崩溃并显示以下消息:

事件#1错误,t = 0:(Txcc):没有这样的门或门矢量:`out'。

由于debug-on-errors = true配置选项,在上面的异常上进行TRAPPING。你的调试器准备好了吗? 在抛出'cRuntimeError'的实例后终止调用   what():send()/ sendDelayed():( Txcc):没有这样的门或门矢量:`out'

使用退出代码终止模拟:134

任何人都可以帮我提供一些有关如何修复它的信息吗?

此致 安德烈

1 个答案:

答案 0 :(得分:0)

你的Txcc ned文件是否存在名为out的输出门?

喜欢

simple Txcc{
    gate:
        output out;
}

使用send()时,请确保ned文件存在您命名的对应输出门。