omnet++中基础案例tictoc1内容解析

一个最基本的工程包含:

.ned文件:网络描述语言,用来描述网络,包括了最基本的节点以及节点的构成。

.cc文件:源代码。

.ini文件:初始化文件。 

tictoc1内容解析:

ned文件:

simple Txc1
{
    gates:
        input in;
        output out;
}

network Tictoc1
{
    submodules:
        tic: Txc1;
        toc: Txc1;
    connections:
        tic.out --> {  delay = 100ms; } --> toc.in;
        tic.in <-- {  delay = 100ms; } <-- toc.out;
}

simple关键字,定义节点Txc1。gate关键字,门,两个,输入与输出。

network关键字,网络,后面是该网络的名称。和ini初始化文件中的名称相同。

display关键字,显示。bgb,背景。

submoudles,子模块,有两个最基本的元素tic和toc,都是从之前定义的Txc1节点中派生出来的,只是它们的显示不一样,p表示坐标。

connection关键字,连接,讲两个节点之间是如何连接的。tic输出门连到了toc输入门。toc的输出门连到了tic输入门。delay代表传输过程中的延迟。

cc文件:

#include <string.h>
#include <omnetpp.h>

using namespace omnetpp;


class Txc1 : public cSimpleModule
{
  protected:
    virtual void initialize() override;
    virtual void handleMessage(cMessage *msg) override;
};

void Txc1::initialize()
{
    if (strcmp("tic", getName()) == 0) {
        cMessage *msg = new cMessage("tictocMsg");
        send(msg, "out");
    }
}

void Txc1::handleMessage(cMessage *msg)
{
    send(msg, "out"); // send out the message
}

头文件,omnetpp.h是omnet自带的,很多库函数都在这里面。using namespace,名字空间,指标识符的各种可见范围。

class Txc1,定义一个类。protected,这个类可以有什么行为,txc1有两个最基本的功能,初始化发送信息。

void Txc1::initialize(),讲如何初始化。getname获取模块名称,为了获取tic和toc。 strcmp用来进行字符串的比较。if这整段的意思是,找到tic节点。找到tic节点之后,生成一个消息,消息的名称为tictocMsg,生成之后,将该消息通过out门发送出去。

void Txc1::handleMessage(cMessage *msg),收到消息之后,把message传进来,send(msg, "out"),将收到的消息从out门发出去。

右键点击ini文件,run as > run configurations...,在config name中选择tictoc1即可运行。step单步执行,run正常执行,仿真结束后可点击conclude simulation查看仿真结果。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值