layer0.cc
来自「omnet++ 平台下的flood 我弄了好久」· CC 代码 · 共 75 行
CC
75 行
#include"layer0.h"
void layer0::initialize()
{
}
void layer0::activity()
{
while(1)
{
cMessage *msg=receive();
switch(msg->kind())
{
case M_NODE://信息来自别的点 设置消息类型为m_lowhigh 然后通过uppergate-out发送
{ msg->setKind(M_LOWHIGH);
send(msg,"uppergate_out");
break;
}
case M_HIGHLOW://信息来自更高层layer 设置消息类型为m_node
{
msg->setKind(M_NODE);
for(int i=0;i<MAXCONN;i++)//复制消息,发送至所有的门
{
cGate *tmpagte=parentModule()->gate("out",i);
if(tmpgate==NULL)
continue;
if(tmpgate->toGate()!=NULL)
{
//若门有链接,发送消息 通lowergate_out门发送出去
cMessage *tmpmsg=new cMessage(* msg);
send(tmpmsg,"lowergate_out",i);
}
}
delete msg;
break;//与书上不一致 p139
}
default:
ev<<"laye0()::activity()error:unknow message receivde\n";
endSimulation();
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?