OMNeT++学习程序 2

目的:为1中程序添加模块颜色,效果;添加输出

1.在demo.ned添加简单模块显示设置,编程路由器的显示形态。方法:添加语句:@display("i=block/routing");

该文件内代码为:

package demo;
//
// TODO documentation
//
simple Txc1
{
    parameters:
        @display("i=block/routing");//加上这句话以后,图标看起来像路由器。所有Txc1类型的模块均会显示成这个形式
    gates:
        input in;
        output out;
}

2.前面一节已经说过网络中有两个简单模块,为了区分,为两个模块添加不同的颜色。方法为:@display("i=,cyan");

demo2.ned代码为:

package demo;
//
// TODO documentation
//让两个模块看起来不同一点,tic为cyan,toc为yellow
network Tictoc1
{
    submodules:
        tic: Txc1 {
   parameters:
       @display("i=,cyan");
             @display("p=62,64");
        }
        toc: Txc1 {
   parameters:
       @display("i=,gold");
       @display("p=170,64;is=l");
        }
    connections:
        tic.out --> { delay = 100ms; } --> toc.in;
        toc.out --> { delay = 100ms; } --> tic.in;
}

3.在消息处理的时候,添加输出语句:EV

Txc.cc代码如下:

#include "Txc1.h"

Define_Module(Txc1);

//启动tic-toc-tic-toc过程,一个模块需要发送第一个消息,让我们设定为是tic发送第一个消息

void Txc1::initialize()
{
    //判断是Tic还是Toc
    if(strcmp("tic",getName())==0)
    {
        //向out门创建并发送第一个消息,tictocMsg消息
        cMessage *msg = new cMessage("tictocMsg");
        send(msg,"out");
        //添加输出,发出第一个消息
        EV<<"Sending initial message\n";
    }

}
//这个函数每当消息到来的时候调用,这里我们只是将这个消息发送给其它模块(通过out门),因为tic和toc做的是相同的事情,所以消息会在两个模块间回荡
void Txc1::handleMessage(cMessage *msg)
{
    EV<<"Received message '"<<msg->getName()<<"',sending it out again\n";
    send(msg,"out");
}

完毕

转载于:https://www.cnblogs.com/xunmeng/archive/2012/10/10/2719015.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值