Ejemplo n.º 1
0
        /********************************************
         * 函数名称:run()
         * 功能:IPv6路由器组件执行函数
         * 参数:无
         * 返回值:无
         * *****************************************/
        public void run()
        {
            while (true)
            {
                if (Form1.stop)
                {
                    this.EmptyingQueue();
                    return;
                }

                //-------------------IPv6路由器input端口传输数据----------------//
                //若input端口不为空
                if (this.input_ports != null)
                {
                    foreach (Input_port input in this.input_ports)
                    {
                        PortDataTransfer(input); //input端口进行数据传输
                    }
                }

                //-------------------有线模块1组件启动执行-------------------//
                WiredModule wiredM1 = (WiredModule)this.wiredModule1;
                //step1、有线模块1组件接收数据
                wiredM1.ComponentDataReceive(wiredM1);
                //step2、执行有线模块1数据帧解封装功能
                wiredM1.EthernetFrameDecapsulation();
                //step3、有线模块1组件output端口传输数据
                wiredM1.ComponentDataTransfer(wiredM1);

                //-------------------缓冲区1组件启动执行-------------------//
                MyBuffer buf1 = (MyBuffer)this.myBuffer1;
                //step1、缓冲区1组件接收数据
                buf1.ComponentDataReceive(buf1);
                //step2、执行缓冲区功能
                buf1.MessageBuffering(null);
                //step3、缓冲区1组件output端口传输数据
                buf1.ComponentDataTransfer(buf1);

                //-------------------路由模块组件启动执行-------------------//
                RouteModule rm = (RouteModule)this.routeModule;
                //step1、路由模块组件接收数据
                rm.ComponentDataReceive(rm);
                //step2、执行路由模块功能
                rm.Routing();
                //step3、路由模块组件output端口传输数据
                rm.ComponentDataTransfer(rm);

                //-------------------缓冲区2组件启动执行-------------------//
                MyBuffer buf2 = (MyBuffer)this.myBuffer2;
                //step1、缓冲区2组件接收数据
                buf2.ComponentDataReceive(buf2);
                //step2、执行缓冲区功能
                buf2.MessageBuffering(null);
                //step3、缓冲区2组件output端口传输数据
                buf2.ComponentDataTransfer(buf2);

                //-------------------有线模块2组件启动执行-------------------//
                WiredModule wiredM2 = (WiredModule)this.wiredModule2;
                //step1、有线模块2组件接收数据
                wiredM2.ComponentDataReceive(wiredM2);
                //step2、执行有线模块2数据帧封装功能
                wiredM2.EthernetFrameEncapsulation(dest_address);
                //step3、有线模块2组件output端口传输数据
                wiredM2.ComponentDataTransfer(wiredM2);


                //----------------IPv6路由器output端口传输数据--------------//
                //若output端口不为空
                if (this.output_ports != null)
                {
                    foreach (Output_port output in this.output_ports)
                    {
                        PortDataTransfer(output); //output端口进行数据传输
                    }
                }
            }
        } // public void run()
Ejemplo n.º 2
0
        /********************************************
         * 函数名称:run()
         * 功能:医疗服务器组件执行函数
         * 参数:无
         * 返回值:无
         * *****************************************/
        public void run()
        {
            while (true)
            {
                if (Form1.stop)
                {
                    this.EmptyingQueue();
                    return;
                }

                //-------------------医疗服务器input端口传输数据----------------//
                //若input端口不为空
                if (this.input_ports != null)
                {
                    foreach (Input_port input in this.input_ports)
                    {
                        PortDataTransfer(input); //input端口进行数据传输
                    }
                }

                //-------------------有线模块组件启动执行-------------------//
                WiredModule wiredM = (WiredModule)this.wiredModule;
                //step1、有线模块组件接收数据
                wiredM.ComponentDataReceive(wiredM);
                //step2、执行有线模块数据帧解封装功能
                wiredM.EthernetFrameDecapsulation();
                //step3、有线模块组件output端口传输数据
                wiredM.ComponentDataTransfer(wiredM);

                //--------------------缓冲区组件启动执行--------------------//
                MyBuffer buf = (MyBuffer)this.myBuffer;
                //step1、缓冲区组件接收数据
                buf.ComponentDataReceive(buf);
                //step2、执行缓冲区功能
                buf.MessageBuffering(null);
                //step3、缓冲区1组件output端口传输数据
                buf.ComponentDataTransfer(buf);

                //---------------网络数据处理模块组件启动执行--------------//
                DataProcessor dp = (DataProcessor)this.dataProcessor;
                //step1、网络数据处理模块接收数据
                dp.ComponentDataReceive(dp);
                //step2、执行网络数据处理模块功能
                dp.NetworkDataProcessing();
                //step3、网络数据处理模块output端口传输数据
                dp.ComponentDataTransfer(dp);

                //----------------信息分析控制模块启动执行------------------//
                DataAnalyzer da = (DataAnalyzer)this.dataAnalyzer;
                //step1、信息分析控制模块接收数据
                da.ComponentDataReceive(da);
                //step2、执行信息分析控制模块功能
                da.DataAnalysis();
                //step3、信息分析控制模块output端口传输数据
                da.ComponentDataTransfer(da);

                //----------------医疗服务器output端口传输数据--------------//
                //若output端口不为空
                if (this.output_ports != null)
                {
                    foreach (Output_port output in this.output_ports)
                    {
                        PortDataTransfer(output); //output端口进行数据传输
                    }
                }
            }
        }// public void run()
Ejemplo n.º 3
0
        /********************************************
         * 函数名称:run()
         * 功能:物联网网关组件执行函数
         * 参数:无
         * 返回值:无
         * *****************************************/
        public void run()
        {
            while (true)
            {
                if (Form1.stop)
                {
                    this.EmptyingQueue();
                    return;
                }

                //-------------------IoT网关input端口传输数据----------------//
                //若input端口不为空
                if (this.input_ports != null)
                {
                    foreach (Input_port input in this.input_ports)
                    {
                        PortDataTransfer(input); //input端口进行数据传输
                    }
                }

                //-------------------无线模块1组件启动执行-------------------//
                WirelessModule wm1 = (WirelessModule)this.wirelessModule1;

                //step1、无线模块1组件接收数据
                wm1.ComponentDataReceive(wm1);
                //step2、执行无线模块1数据帧解封装功能
                wm1.FrameDecapsulation();
                //step3、无线模块1组件output端口传输数据
                wm1.ComponentDataTransfer(wm1);

                //-------------------无线模块2组件启动执行-------------------//
                WirelessModule wm2 = (WirelessModule)this.wirelessModule2;
                //step1、无线模块2组件接收数据
                wm2.ComponentDataReceive(wm2);
                //step2、执行无线模块2数据帧解封装功能
                wm2.FrameDecapsulation();
                //step3、无线模块2组件output端口传输数据
                wm2.ComponentDataTransfer(wm2);

                //-------------------无线模块3组件启动执行-------------------//
                WirelessModule wm3 = (WirelessModule)this.wirelessModule3;
                //step1、无线模块2组件接收数据
                wm3.ComponentDataReceive(wm3);
                //step2、执行无线模块2数据帧解封装功能
                wm3.FrameDecapsulation();
                //step3、无线模块2组件output端口传输数据
                wm3.ComponentDataTransfer(wm3);

                //-------------------缓冲区1组件启动执行-------------------//
                MyBuffer buf1 = (MyBuffer)this.myBuffer1;
                //step1、缓冲区1组件接收数据
                buf1.ComponentDataReceive(buf1);
                //step2、执行缓冲区功能
                buf1.MessageBuffering("frame802154");
                //step3、缓冲区1组件output端口传输数据
                buf1.ComponentDataTransfer(buf1);

                //-------------------缓冲区2组件启动执行-------------------//
                MyBuffer buf2 = (MyBuffer)this.myBuffer2;
                //step1、缓冲区2组件接收数据
                buf2.ComponentDataReceive(buf2);
                //step2、执行缓冲区2功能
                buf2.MessageBuffering("frame802154");
                //step3、缓冲区2组件output端口传输数据
                buf2.ComponentDataTransfer(buf2);

                //-------------------缓冲区3组件启动执行-------------------//
                MyBuffer buf3 = (MyBuffer)this.myBuffer3;
                //step1、缓冲区3组件接收数据
                buf3.ComponentDataReceive(buf3);
                //step2、执行缓冲区3功能
                buf3.MessageBuffering("frame802151");
                //step3、缓冲区3组件output端口传输数据
                buf3.ComponentDataTransfer(buf3);

                //----------------网络协议转换模块启动执行-----------------//
                ProtocolConverter pc = (ProtocolConverter)this.protocolConverter;
                //step1、网络协议转换模块接收数据
                pc.ComponentDataReceive(pc);
                //step2、执行网络协议转换模块功能
                pc.ProtocolConversion();
                //step3、网络协议转换模块output端口传输数据
                pc.ComponentDataTransfer(pc);

                //-------------------缓冲区4组件启动执行-------------------//
                MyBuffer buf4 = (MyBuffer)this.myBuffer4;
                //step1、缓冲区3组件接收数据
                buf4.ComponentDataReceive(buf4);
                //step2、执行缓冲区3功能
                buf4.MessageBuffering(null);
                //step3、缓冲区3组件output端口传输数据
                buf4.ComponentDataTransfer(buf4);

                //-------------------有线模块组件启动执行-------------------//
                WiredModule wiredM = (WiredModule)wiredModule;
                //step1、有线模块组件接收数据
                wiredM.ComponentDataReceive(wiredM);
                //step2、执行有线模块组件功能
                wiredM.EthernetFrameEncapsulation(dest_address);
                //step3、有线模块组件output端口传输数据
                wiredM.ComponentDataTransfer(wiredM);

                //----------------IoT网关output端口传输数据--------------//
                //若output端口不为空
                if (this.output_ports != null)
                {
                    foreach (Output_port output in this.output_ports)
                    {
                        PortDataTransfer(output); //output端口进行数据传输
                    }
                }
            }
        }// public void run()