亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? aodv_app_manager.pr.c

?? aodv的仿真代碼
?? C
?? 第 1 頁 / 共 2 頁
字號:
/* Process model C form file: aodv_app_manager.pr.c *//* Portions of this file copyright 1992-2001 by OPNET Technologies, Inc. *//* This variable carries the header into the object file */static const char aodv_app_manager_pr_c [] = "MIL_3_Tfile_Hdr_ 80C 30A op_runsim 7 3C064A56 3C064A56 1 manet.antd.nist.gov lmiller 0 0 none none 0 0 none 0 0 0 0 0 0                                                                                                                                                                                                                                                                                                                                                                                                        ";#include <string.h>/* OPNET system definitions */#include <opnet.h>#if defined (__cplusplus)extern "C" {#endifFSM_EXT_DECS#if defined (__cplusplus)} /* end of 'extern "C"' */#endif/* Header Block */#define UPP_INPUT_STRM   0#define LOW_INPUT_STRM   1#define LOW_OUTPUT_STRM  0#define UPP_OUTPUT_STRM  1/* transition codes */#define INIT_CODE        0#define CHANGE_DEST_CODE 1/* transition macro */#define UPP_ARVL ( op_intrpt_type () == OPC_INTRPT_STRM && op_intrpt_strm() == UPP_INPUT_STRM)#define LOW_ARVL ( op_intrpt_type () == OPC_INTRPT_STRM && op_intrpt_strm() == LOW_INPUT_STRM)#define INIT     ( op_intrpt_type () == OPC_INTRPT_SELF && op_intrpt_code() == INIT_CODE)#define CHANGE_DEST    ( op_intrpt_type () == OPC_INTRPT_SELF && op_intrpt_code() == CHANGE_DEST_CODE)/* interlocutor values */#define NONE -2#define RANDOM -1/* Global variable */int num_nodes;int NB_FLOWS_AVAIL = 15;int NB_FLOWS       = 15;/* End of Header Block */#if !defined (VOSD_NO_FIN)#undef	BIN#undef	BOUT#define	BIN		FIN_LOCAL_FIELD(last_line_passed) = __LINE__ - _block_origin;#define	BOUT	BIN#define	BINIT	FIN_LOCAL_FIELD(last_line_passed) = 0; _block_origin = __LINE__;#else#define	BINIT#endif /* #if !defined (VOSD_NO_FIN) *//* State variable definitions */typedef struct	{	/* Internal state tracking for FSM */	FSM_SYS_STATE	/* State Variables */	int	                    		DEBUG;	int	                    		node_addr;	int	                    		node_id;	int	                    		INTERLOCUTOR;	int	                    		GRAT_RATIO;	Distribution *	         		grat_dist;	Distribution *	         		address_dist;	int	                    		dest;	int	                    		SRC_ACTIVE;	} aodv_app_manager_state;#define pr_state_ptr            		((aodv_app_manager_state*) SimI_Mod_State_Ptr)#define DEBUG                   		pr_state_ptr->DEBUG#define node_addr               		pr_state_ptr->node_addr#define node_id                 		pr_state_ptr->node_id#define INTERLOCUTOR            		pr_state_ptr->INTERLOCUTOR#define GRAT_RATIO              		pr_state_ptr->GRAT_RATIO#define grat_dist               		pr_state_ptr->grat_dist#define address_dist            		pr_state_ptr->address_dist#define dest                    		pr_state_ptr->dest#define SRC_ACTIVE              		pr_state_ptr->SRC_ACTIVE/* This macro definition will define a local variable called	*//* "op_sv_ptr" in each function containing a FIN statement.	*//* This variable points to the state variable data structure,	*//* and can be used from a C debugger to display their values.	*/#undef FIN_PREAMBLE#define FIN_PREAMBLE	aodv_app_manager_state *op_sv_ptr = pr_state_ptr;/* No Function Block */enum { _block_origin = __LINE__ };/* Undefine optional tracing in FIN/FOUT/FRET *//* The FSM has its own tracing code and the other *//* functions should not have any tracing.		  */#undef FIN_TRACING#define FIN_TRACING#undef FOUTRET_TRACING#define FOUTRET_TRACING#if defined (__cplusplus)extern "C" {#endif	void aodv_app_manager (void);	Compcode aodv_app_manager_init (void **);	void aodv_app_manager_diag (void);	void aodv_app_manager_terminate (void);	void aodv_app_manager_svar (void *, const char *, char **);#if defined (__cplusplus)} /* end of 'extern "C"' */#endif/* Process model interrupt handling procedure */voidaodv_app_manager (void)	{	int _block_origin = 0;	FIN (aodv_app_manager ());	if (1)		{		Objid	     			 params_comp_attr_objid;		Objid                    params_attr_objid;		/* Packet reception */		int pk_type,dest_ip_addr;		/* Packet Transmission */		Packet *pkptr, *rx_pk_ptr;		int   grat_outcome, g_flag;		/* Service request to routing layer */		Ici * ici_ptr, *rx_ici_ptr;		int   segment_count;		int   i;		int   a_requested;		double wait_time;		FSM_ENTER (aodv_app_manager)		FSM_BLOCK_SWITCH			{			/*---------------------------------------------------------*/			/** state (init) enter executives **/			FSM_STATE_ENTER_FORCED (0, state0_enter_exec, "init", "aodv_app_manager () [init enter execs]")				{				// Trace				if(DEBUG > 0)					{					printf("\n<node %d @ app manager>  INIT ::\n", node_addr);					printf("                         - Current time = %f\n", op_sim_time());					printf("                         - Flows avail  = %d\n", NB_FLOWS_AVAIL);					}				// Proceed only if there is more than one node in the network, and if there is at least				// a flow available				if(num_nodes > 1 && NB_FLOWS_AVAIL > 0)					{					// If Interlocutor is different than random or none, then set the dest					// variable to the specified destinatio address, and reserve a flow					if(INTERLOCUTOR != RANDOM && INTERLOCUTOR != NONE)						{								// Reserve a flow						NB_FLOWS_AVAIL--;						// Set destination						dest = INTERLOCUTOR;						}					// If Interlocutor is set to none, then src is not active					else if(INTERLOCUTOR == NONE)						{						// Set dest to none. Src will be silent						dest = NONE;						}					// If Interlocutor is set to random, then pick up a random destination					// and reserve a flow					else if(INTERLOCUTOR == RANDOM)						{						// Reserve a flow						NB_FLOWS_AVAIL--;								// Load distribution						address_dist = op_dist_load ("uniform_int", 0, (num_nodes-1));						// Pick a random destination						dest = (int) op_dist_outcome (address_dist);						// Repeat until dest is valid						while (node_addr == dest)							{							dest = (int) op_dist_outcome (address_dist);							}						}					}				else 					{					if(NB_FLOWS_AVAIL < 1)						if(DEBUG > 0) printf("                         - No more spot left (%d flows avail)\n", NB_FLOWS_AVAIL);					// No more spots are left. source will be silent					dest = NONE;					}				if(DEBUG > 0) printf("                         - Dest is      = %d (None = -2, Rand = -1)\n",dest);				}			/** state (init) exit executives **/			FSM_STATE_EXIT_FORCED (0, "init", "aodv_app_manager () [init exit execs]")				{				}			/** state (init) transition processing **/			FSM_TRANSIT_FORCE (1, state1_enter_exec, ;, "default", "", "init", "idle")				/*---------------------------------------------------------*/			/** state (idle) enter executives **/			FSM_STATE_ENTER_UNFORCED (1, state1_enter_exec, "idle", "aodv_app_manager () [idle enter execs]")				{								}			/** blocking after enter executives of unforced state. **/			FSM_EXIT (3,aodv_app_manager)			/** state (idle) exit executives **/			FSM_STATE_EXIT_UNFORCED (1, "idle", "aodv_app_manager () [idle exit execs]")				{				}			/** state (idle) transition processing **/			FSM_INIT_COND (LOW_ARVL)			FSM_TEST_COND (UPP_ARVL)			FSM_DFLT_COND			FSM_TEST_LOGIC ("idle")			FSM_TRANSIT_SWITCH				{				FSM_CASE_TRANSIT (0, 2, state2_enter_exec, ;, "LOW_ARVL", "", "idle", "rx")				FSM_CASE_TRANSIT (1, 3, state3_enter_exec, ;, "UPP_ARVL", "", "idle", "tx")				FSM_CASE_TRANSIT (2, 1, state1_enter_exec, ;, "default", "", "idle", "idle")				}				/*---------------------------------------------------------*/			/** state (rx) enter executives **/			FSM_STATE_ENTER_FORCED (2, state2_enter_exec, "rx", "aodv_app_manager () [rx enter execs]")				{				// Read associated ICI				rx_ici_ptr = op_intrpt_ici();				op_ici_attr_get(rx_ici_ptr,"Source",&dest_ip_addr);				op_ici_destroy(rx_ici_ptr);								// Destroy packet from upcoming stream				rx_pk_ptr = op_pk_get (LOW_INPUT_STRM);				op_pk_nfd_get(rx_pk_ptr, "A", &a_requested);				op_pk_destroy(rx_pk_ptr);												// Send a data packet back to the source, in order to 				// fake a bi-directional comm.				if(a_requested)					{					// Trace					if(DEBUG > 2)						{						printf("\n<node %d @ app manager><Time = %f> Data pk rcvd from %d: Sending pk back.\n", node_addr,op_sim_time(),dest_ip_addr);						}									// Generate packet					rx_pk_ptr = op_pk_create_fmt("AODV_DATA_PAYLOAD");					// Set A to 0					op_pk_nfd_set(rx_pk_ptr, "A", 0);					// Request a service from the routing layer					rx_ici_ptr = op_ici_create("service_req_routing");					op_ici_attr_set(rx_ici_ptr,"Dest", dest_ip_addr);					op_ici_attr_set(rx_ici_ptr,"G", 1);					op_ici_install(rx_ici_ptr);					// Send packet to lower layer					op_pk_send (rx_pk_ptr,LOW_OUTPUT_STRM);					}								}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲欧美日韩在线| 亚洲精品五月天| 中文字幕一区二区三区视频| 一区二区三区久久久| 久久99精品视频| 欧美性一区二区| 中文字幕不卡在线播放| 久久91精品国产91久久小草| 日本乱人伦一区| 中文字幕人成不卡一区| 久久精品国产澳门| 欧美日韩国产乱码电影| 亚洲人成网站影音先锋播放| 国产精品自在欧美一区| 91麻豆精品国产自产在线 | 日韩一区二区三区视频在线观看| 欧美高清一级片在线观看| 裸体歌舞表演一区二区| 欧美日韩高清一区二区| 夜夜爽夜夜爽精品视频| 91免费在线看| 18欧美亚洲精品| 99热精品一区二区| 中文字幕成人av| 成人免费观看视频| 中文字幕av免费专区久久| 国产一区二区调教| 2017欧美狠狠色| 国产麻豆午夜三级精品| 欧美精品一区二区三区视频| 秋霞午夜鲁丝一区二区老狼| 制服视频三区第一页精品| 天堂午夜影视日韩欧美一区二区| 欧美色欧美亚洲另类二区| 亚洲一区在线观看视频| 久久久久久久综合日本| 国产精品一区二区三区乱码| 久久久另类综合| 粉嫩高潮美女一区二区三区| 亚洲国产成人自拍| 91香蕉视频在线| 依依成人精品视频| 91精品中文字幕一区二区三区| 午夜精品久久久久久久久久久 | 菠萝蜜视频在线观看一区| 国产精品三级电影| 91美女在线看| 日韩精彩视频在线观看| 26uuu精品一区二区| 91一区二区三区在线播放| 一区二区三区四区精品在线视频 | av在线不卡免费看| 亚洲精品欧美激情| 欧美精品视频www在线观看| 老司机精品视频在线| 国产女同互慰高潮91漫画| 色吧成人激情小说| 蜜桃91丨九色丨蝌蚪91桃色| 亚洲精品一区二区三区蜜桃下载| 国产91高潮流白浆在线麻豆| 精品一区二区三区免费播放| 欧美高清在线精品一区| 欧美综合一区二区三区| 加勒比av一区二区| 亚洲精品国产第一综合99久久| 欧美高清www午色夜在线视频| 国产一区在线精品| 一区二区三区中文字幕电影| 精品国产一区二区三区久久久蜜月| 成人黄色777网| 蜜臀a∨国产成人精品| 中文字幕中文字幕一区二区| 欧美一级一区二区| 91在线观看视频| 国精产品一区一区三区mba视频| 亚洲欧美色图小说| 国产亚洲一二三区| 这里只有精品免费| 日本精品视频一区二区三区| 国产精品资源网| 日韩电影一区二区三区| 综合色中文字幕| 精品精品欲导航| 欧美日韩精品一区二区天天拍小说| 国产剧情一区二区三区| 日本亚洲免费观看| 亚洲精品国产视频| 成人免费小视频| 国产欧美日韩综合精品一区二区| 亚洲精品免费在线观看| wwwwxxxxx欧美| 欧美三级欧美一级| 99久久国产免费看| 国产精品一二三| 麻豆免费精品视频| 三级欧美在线一区| 亚洲综合在线第一页| 欧美国产欧美亚州国产日韩mv天天看完整| 91麻豆精品国产91久久久资源速度| 日本电影欧美片| 91女厕偷拍女厕偷拍高清| 国产成人在线色| 高清成人免费视频| 国产美女视频一区| 韩国三级电影一区二区| 久久er99精品| 久久成人av少妇免费| 免费看精品久久片| 免费一级片91| 七七婷婷婷婷精品国产| 奇米精品一区二区三区在线观看一| 亚洲综合视频在线| 亚洲成人动漫在线观看| 亚洲香肠在线观看| 夜夜操天天操亚洲| 婷婷国产v国产偷v亚洲高清| 亚洲综合在线免费观看| 一区二区在线免费观看| 亚洲人快播电影网| 亚洲精品欧美二区三区中文字幕| 亚洲最新视频在线观看| 亚洲综合一区二区精品导航| 亚洲国产欧美一区二区三区丁香婷| 午夜精品久久久久久久久久| 日本中文字幕一区| 韩国成人精品a∨在线观看| 国产乱对白刺激视频不卡| 成人网页在线观看| 91视频xxxx| 91精品国产入口| 精品少妇一区二区三区| 国产午夜精品理论片a级大结局 | 日韩中文字幕一区二区三区| 日韩和欧美一区二区三区| 狠狠色丁香婷婷综合久久片| 国产成人精品免费视频网站| 91色婷婷久久久久合中文| 欧美日韩成人在线一区| 久久一区二区视频| 亚洲欧洲无码一区二区三区| 亚洲美女视频一区| 男男视频亚洲欧美| 成人国产亚洲欧美成人综合网| 精品99999| 一区二区在线观看不卡| 奇米色一区二区三区四区| 不卡影院免费观看| 91精品一区二区三区久久久久久| 欧美mv日韩mv国产网站| 亚洲欧美激情在线| 狠狠色狠狠色合久久伊人| 91福利在线播放| 欧美成人猛片aaaaaaa| 国产精品国产成人国产三级| 日欧美一区二区| 91在线视频播放地址| 日韩欧美二区三区| 亚洲美女视频在线观看| 国产一区二区不卡| 欧美精品在线观看播放| 国产精品全国免费观看高清| 日韩在线卡一卡二| 99久久国产综合精品色伊 | 久久99国产精品麻豆| 91色综合久久久久婷婷| 国产亚洲一区二区三区| 日韩专区在线视频| 91蜜桃网址入口| 国产人成一区二区三区影院| 全部av―极品视觉盛宴亚洲| 色婷婷激情一区二区三区| 欧美激情综合五月色丁香| 麻豆一区二区在线| 在线91免费看| 一区二区欧美国产| 成人av网址在线| 久久久影视传媒| 免费精品视频最新在线| 欧美日韩大陆一区二区| 一区二区三区美女| 91丨porny丨国产入口| 国产精品色呦呦| 国产成人亚洲综合a∨婷婷| 日韩一区二区在线播放| 成人午夜视频在线观看| 精品1区2区在线观看| 久久成人免费网| 日韩欧美高清一区| 奇米色777欧美一区二区| 欧美日韩成人一区| 午夜精品福利一区二区蜜股av| 91国偷自产一区二区开放时间| 亚洲欧美另类小说| 色婷婷亚洲一区二区三区| 国产精品国产精品国产专区不蜜 | 国模冰冰炮一区二区| 精品国产乱码久久久久久1区2区| 日本亚洲免费观看| 欧美成人午夜电影| 国产一区二区三区四区五区入口 |