⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 layer0.cc

📁 拓扑查找算法的omnet仿真实现
💻 CC
字号:
//-------------------------------------------------------------------
//  file name: layer0.cpp
// 
//    - contains the implementation of layer0 class
//
//-------------------------------------------------------------------


#include "layer0.h"

void layer0::initialize()
{
}


void layer0::activity()
{
	// main loop
	while(1)
	{
		cMessage * msg = receive();

		switch (msg->kind())
		{

		case M_NODE:					// message from another node
			msg->setKind(M_LOWHIGH);
			send(msg,"uppergate_out");
			break;


		case M_HIGHLOW:					// message from a higher layer
			{
				msg->setKind(M_NODE);

				// duplicate the message and send it through all the gates
				for (int i=0;i<MAXCONN;i++)
				{
					cGate *tmpgate = parentModule()->gate("out",i);
					
					if (tmpgate==NULL)
						continue;

					// if gate is connected, send a message through it
					if (tmpgate->toGate()!=NULL)
					{
						cMessage *tmpmsg = new cMessage(*msg);
						send(tmpmsg,"lowergate_out",i);
					}
				}

				// delete original message
				delete msg;
			}
			break;

			
		default:						// unknown message received - bug!. 
			ev << "layer0::activity() error: unknow message received\n";
			endSimulation();
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -