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

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

?? ns-namsupp.tcl

?? 這個軟件的功能是實現多播協議
?? TCL
字號:
# #  Copyright (c) 1997 by the University of Southern California#  All rights reserved.# #  Permission to use, copy, modify, and distribute this software and its#  documentation in source and binary forms for non-commercial purposes#  and without fee is hereby granted, provided that the above copyright#  notice appear in all copies and that both the copyright notice and#  this permission notice appear in supporting documentation. and that#  any documentation, advertising materials, and other materials related#  to such distribution and use acknowledge that the software was#  developed by the University of Southern California, Information#  Sciences Institute.  The name of the University may not be used to#  endorse or promote products derived from this software without#  specific prior written permission.# #  THE UNIVERSITY OF SOUTHERN CALIFORNIA makes no representations about#  the suitability of this software for any purpose.  THIS SOFTWARE IS#  PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES,#  INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF#  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.# #  Other copyrights might apply to parts of this software and are so#  noted when applicable.# # ns trace support for nam## Author: Haobo Yu (haoboy@isi.edu)## $Header: /nfs/jade/vint/CVSROOT/ns-2/tcl/lib/ns-namsupp.tcl,v 1.37 2000/09/14 18:19:27 haoboy Exp $### Support for node tracing## This will only work during initialization. Not possible to change shape # dynamicallyNode instproc shape { shape } {	$self instvar attr_ 	set attr_(SHAPE) $shape}# Returns the current shape of the nodeNode instproc get-shape {} {	$self instvar attr_	if [info exists attr_(SHAPE)] {		return $attr_(SHAPE)	} else {		return ""	}}Node instproc color { color } {	$self instvar attr_ id_	set ns [Simulator instance]	if [$ns is-started] {		# color must be initialized		$ns puts-nam-config \		[eval list "n -t [$ns now] -s $id_ -S COLOR -c $color -o $attr_(COLOR) -i $color -I $attr_(LCOLOR)"]		set attr_(COLOR) $color	        set attr_(LCOLOR) $color	} else {		set attr_(COLOR) $color	        set attr_(LCOLOR) $color	}}Node instproc label { str} {	$self instvar attr_ id_	set ns [Simulator instance]	if [info exists attr_(DLABEL)] {		$ns puts-nam-config "n -t [$ns now] -s $id_ -S DLABEL -l \"$str\" -L $attr_(DLABEL)"	} else {		$ns puts-nam-config "n -t [$ns now] -s $id_ -S DLABEL -l \"$str\" -L \"\""	}	set attr_(DLABEL) \"$str\"}Node instproc label-color { str} {        $self instvar attr_ id_        set ns [Simulator instance]        if [info exists attr_(DCOLOR)] {                $ns puts-nam-config "n -t [$ns now] -s $id_ -S DCOLOR -e \"$str\" -E $attr_(DCOLOR)"        } else {                $ns puts-nam-config "n -t [$ns now] -s $id_ -S DCOLOR -e \"$str\" -E \"\""        }        set attr_(DCOLOR) \"$str\"}Node instproc label-at { str } {        $self instvar attr_ id_        set ns [Simulator instance]        if [info exists attr_(DIRECTION)] {                $ns puts-nam-config "n -t [$ns now] -s $id_ -S DIRECTION -p \"$str\" -P $attr_(DIRECTION)"        } else {                $ns puts-nam-config "n -t [$ns now] -s $id_ -S DIRECTION -p \"$str\" -P \"\""        }        set attr_(DIRECTION) \"$str\"}Node instproc dump-namconfig {} {	$self instvar attr_ id_ address_	set ns [Simulator instance]	if ![info exists attr_(SHAPE)] {		set attr_(SHAPE) "circle"	} 	if ![info exists attr_(COLOR)] {		set attr_(COLOR) "black"	        set attr_(LCOLOR) "black"	}        if ![info exists attr_(DCOLOR)] {                set attr_(DCOLOR) "black"        }	$ns puts-nam-config \		[eval list "n -t * -a $address_ -s $id_ -S UP -v $attr_(SHAPE) -c $attr_(COLOR) -i $attr_(LCOLOR)"]}Node instproc change-color { color } {	puts "Warning: Node::change-color is obsolete. Use Node::color instead"	$self color $color}Node instproc get-attribute { name } {	$self instvar attr_	if [info exists attr_($name)] {		return $attr_($name)	} else {		return ""	}}Node instproc get-color {} {	puts "Warning: Node::get-color is obsolete. Please use Node::get-attribute"	return [$self get-attribute "COLOR"]}Node instproc add-mark { name color {shape "circle"} } {	$self instvar id_ markColor_ shape_	set ns [Simulator instance]	$ns puts-nam-config "m -t [$ns now] -s $id_ -n $name -c $color -h $shape"	set markColor_($name) $color	set shape_($name) $shape}Node instproc delete-mark { name } {	$self instvar id_ markColor_ shape_	# Ignore if the mark $name doesn't exist	if ![info exists markColor_($name)] {		return	}	set ns [Simulator instance]	$ns puts-nam-config \		"m -t [$ns now] -s $id_ -n $name -c $markColor_($name) -h $shape_($name) -X"}## Support for link tracing# XXX only SimpleLink (and its children) can dump nam config, because Link# doesn't have bandwidth and delay.#SimpleLink instproc dump-namconfig {} {	# make a duplex link in nam	$self instvar link_ attr_ fromNode_ toNode_	if ![info exists attr_(COLOR)] {		set attr_(COLOR) "black"	}	if ![info exists attr_(ORIENTATION)] {		set attr_(ORIENTATION) ""	}	set ns [Simulator instance]	set bw [$link_ set bandwidth_]	set delay [$link_ set delay_]	$ns puts-nam-config \		"l -t * -s [$fromNode_ id] -d [$toNode_ id] -S UP -r $bw -D $delay -c $attr_(COLOR) -o $attr_(ORIENTATION)"}Link instproc dump-nam-queueconfig {} {	$self instvar attr_ fromNode_ toNode_	if ![info exists attr_(COLOR)] {		set attr_(COLOR) "black"	}	set ns [Simulator instance]	if [info exists attr_(QUEUE_POS)] {		$ns puts-nam-config "q -t * -s [$fromNode_ id] -d [$toNode_ id] -a $attr_(QUEUE_POS)"	} else {		set attr_(QUEUE_POS) ""	}}## XXX# This function should be called ONLY ONCE during initialization. # The order in which links are created in nam is determined by the calling # order of this function.#Link instproc orient { ori } {	$self instvar attr_	set attr_(ORIENTATION) $ori	[Simulator instance] register-nam-linkconfig $self}Link instproc get-attribute { name } {	$self instvar attr_	if [info exists attr_($name)] {		return $attr_($name)	} else {		return ""	}}Link instproc queuePos { pos } {	$self instvar attr_	set attr_(QUEUE_POS) $pos}Link instproc color { color } {	$self instvar attr_ fromNode_ toNode_ trace_	set ns [Simulator instance]	if [$ns is-started] {		$ns puts-nam-config \			[eval list "l -t [$ns now] -s [$fromNode_ id] -d [$toNode_ id] -S COLOR -c $color -o $attr_(COLOR)"]		set attr_(COLOR) $color	} else {		set attr_(COLOR) $color	}}# a link doesn't have its own trace file, write it to global trace fileLink instproc change-color { color } {	puts "Warning: Link::change-color is obsolete. Please use Link::color."	$self color $color}Link instproc get-color {} {	puts "Warning: Node::get-color is obsolete. Please use Node::get-attribute"	return [$self get-attribute "COLOR"]}Link instproc label { label } {        $self instvar attr_ fromNode_ toNode_ trace_        set ns [Simulator instance]        if [info exists attr_(DLABEL)] {            $ns puts-nam-config \            "l -t [$ns now] -s [$fromNode_ id] -d [$toNode_ id] -S DLABEL -l \"$label\" -L $attr_(DLABEL)"        } else {            $ns puts-nam-config \            "l -t [$ns now] -s [$fromNode_ id] -d [$toNode_ id] -S DLABEL -l \"$label\" -L \"\""        }        set attr_(DLABEL) \"$label\"    }Link instproc label-color { str } {        $self instvar attr_ fromNode_ toNode_ trace_        set ns [Simulator instance]        if [info exists attr_(DCOLOR)] {            $ns puts-nam-config \            "l -t [$ns now] -s [$fromNode_ id] -d [$toNode_ id] -S DCOLOR -e \"$str\" -E $attr_(DCOLOR)"        } else {            $ns puts-nam-config \            "l -t [$ns now] -s [$fromNode_ id] -d [$toNode_ id] -S DCOLOR -e \"$str\" -E \"\""        }        set attr_(DCOLOR) \"$str\"    }Link instproc label-at { str } {        $self instvar attr_ fromNode_ toNode_ trace_        set ns [Simulator instance]        if [info exists attr_(DIRECTION)] {            $ns puts-nam-config \            "l -t [$ns now] -s [$fromNode_ id] -d [$toNode_ id] -S DIRECTION -p \"$str\" -P $attr_(DIRECTION)"        } else {            $ns puts-nam-config \            "l -t [$ns now] -s [$fromNode_ id] -d [$toNode_ id] -S DIRECTION -p \"$str\" -P \"\""        }        set attr_(DIRECTION) \"$str\"    }## Support for nam snapshot#Simulator instproc snapshot { } {    set ns [Simulator instance]    $ns puts-nam-config \            "v -t [$self now] take_snapshot"}Simulator instproc rewind-nam { } {	set ns [Simulator instance]	$ns puts-nam-config \			"v  -t [$self now] playing_backward"}Simulator instproc re-rewind-nam { } {	set ns [Simulator instance]	$ns puts-nam-config \				"v  -t [$self now] playing_forward"}Simulator instproc terminate-nam { } {	set ns [Simulator instance]	$ns puts-nam-config \				"v  -t [$self now] terminating_nam"}## Support for agent tracing## This function records agents being traced, so they will be written into nam# trace when the simulator startsSimulator instproc add-agent-trace { agent name {f ""} } {	$self instvar tracedAgents_	set tracedAgents_($name) $agent	set trace [$self get-nam-traceall]	if {$f != ""} {		$agent attach-trace $f	} elseif {$trace != ""} {		$agent attach-trace $trace	}}Simulator instproc delete-agent-trace { agent } {	$agent delete-agent-trace}Simulator instproc monitor-agent-trace { agent } {	$self instvar monitoredAgents_	lappend monitoredAgents_ $agent}## Agent trace is added when attaching to a traced node# we need to keep a file handle in tcl so that var tracing can also be # done in tcl by manual inserting update-var-trace{}#Agent instproc attach-trace { file } {	$self instvar namTrace_	set namTrace_ $file 	# add all traced var messages	$self attach $file }## nam initialization#Simulator instproc dump-namagents {} {	$self instvar tracedAgents_ monitoredAgents_		if {![$self is-started]} {		return	}	if [info exists tracedAgents_] {		foreach id [array names tracedAgents_] {			$tracedAgents_($id) add-agent-trace $id			$tracedAgents_($id) cmd dump-namtracedvars		}		unset tracedAgents_	}	if [info exists monitoredAgents_] {		foreach a $monitoredAgents_ {			$a show-monitor		}		unset monitoredAgents_	}}Simulator instproc dump-namversion { v } {	$self puts-nam-config "V -t * -v $v -a 0"}Simulator instproc dump-namcolors {} {	$self instvar color_	if ![$self is-started] {		return 	}	foreach id [array names color_] {		$self puts-nam-config "c -t * -i $id -n $color_($id)"	}}Simulator instproc dump-namlans {} {	if ![$self is-started] {		return	}	$self instvar Node_	foreach nn [array names Node_] {		if [$Node_($nn) is-lan?] {			$Node_($nn) dump-namconfig		}	}}Simulator instproc dump-namlinks {} {	$self instvar linkConfigList_	if ![$self is-started] {		return	}	if [info exists linkConfigList_] {		foreach lnk $linkConfigList_ {			$lnk dump-namconfig		}		unset linkConfigList_	}}Simulator instproc dump-namnodes {} {	$self instvar Node_	if ![$self is-started] {		return	}	foreach nn [array names Node_] {		if ![$Node_($nn) is-lan?] {			$Node_($nn) dump-namconfig		}	}}Simulator instproc dump-namqueues {} {	$self instvar link_	if ![$self is-started] {		return	}	foreach qn [array names link_] {		$link_($qn) dump-nam-queueconfig	}}# Write hierarchical masks/shifts into trace fileSimulator instproc dump-namaddress {} {	# First write number of hierarchies	$self puts-nam-config \	    "A -t * -n [AddrParams hlevel] -p 0 -o [AddrParams set \ALL_BITS_SET] -c [AddrParams McastShift] -a [AddrParams McastMask]"		for {set i 1} {$i <= [AddrParams hlevel]} {incr i} {		$self puts-nam-config "A -t * -h $i -m [AddrParams \NodeMask $i] -s [AddrParams NodeShift $i]"	}}Simulator instproc init-nam {} {	$self instvar annotationSeq_ 	set annotationSeq_ 0	# Setting nam trace file version first	$self dump-namversion 1.0a5		# Addressing scheme	$self dump-namaddress		# Color configuration for nam	$self dump-namcolors		# Node configuration for nam	$self dump-namnodes		# Lan and Link configurations for nam	$self dump-namlinks 	$self dump-namlans		# nam queue configurations	$self dump-namqueues		# Traced agents for nam	$self dump-namagents}## Other animation control support# Simulator instproc trace-annotate { str } {	$self instvar annotationSeq_	$self puts-ns-traceall [format \		"v %s %s {set sim_annotation {%s}}" [$self now] eval $str]	incr annotationSeq_	$self puts-nam-config \	  "v -t [$self now] sim_annotation [$self now] $annotationSeq_ $str"}proc trace_annotate { str } {	set ns [Simulator instance]	$ns trace-annotate $str}proc flash_annotate { start duration msg } {	set ns [Simulator instance]	$ns at $start "trace_annotate {$msg}"	$ns at [expr $start+$duration] "trace_annotate periodic_message"}# rate's unit is secondSimulator instproc set-animation-rate { rate } {	# time_parse defined in tcl/rtp/session-rtp.tcl	set r [time_parse $rate]	$self puts-nam-config "v -t [$self now] set_rate [expr 10*log10($r)] 1"}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人avav影音| 国产一区在线不卡| 欧美人与z0zoxxxx视频| 亚洲午夜久久久久久久久电影院 | 久久婷婷色综合| 国产精品18久久久久久久网站| 久久精品亚洲麻豆av一区二区 | 中文字幕永久在线不卡| 色哟哟在线观看一区二区三区| 樱花草国产18久久久久| 777色狠狠一区二区三区| 久久aⅴ国产欧美74aaa| 国产偷国产偷亚洲高清人白洁| 波波电影院一区二区三区| 一区二区三区在线视频观看 | 欧美成人艳星乳罩| 国产成人亚洲综合a∨婷婷| 国产色综合久久| 99视频热这里只有精品免费| 亚欧色一区w666天堂| 久久综合狠狠综合久久激情| 91视视频在线观看入口直接观看www | 久久人人97超碰com| 岛国精品一区二区| 亚洲国产日韩一区二区| 欧美精品一区二区在线播放| 97精品国产97久久久久久久久久久久 | 亚洲中国最大av网站| 精品久久久三级丝袜| 91在线视频网址| 久久国产精品99精品国产| 中文字幕一区二| 欧美va亚洲va| 欧美视频在线观看一区二区| 国产精品自在欧美一区| 一区二区不卡在线播放 | 91捆绑美女网站| 日韩精品91亚洲二区在线观看| 国产午夜三级一区二区三| 欧美亚洲图片小说| 国产一区二区三区视频在线播放| 亚洲一本大道在线| 国产精品色眯眯| 日韩一级大片在线| 欧日韩精品视频| 成人网在线播放| 经典一区二区三区| 午夜影院久久久| 伊人开心综合网| 国产精品久久久久aaaa| 久久亚洲二区三区| 欧美一区二区三区不卡| 欧美三级视频在线| 色综合久久久久综合99| 成人av网址在线观看| 精品一区二区三区香蕉蜜桃 | 国产一区三区三区| 久久精品国产久精国产爱| 亚洲成人在线观看视频| 亚洲日本成人在线观看| 亚洲国产精华液网站w| 337p日本欧洲亚洲大胆精品| 欧美一级黄色大片| 欧美精品v日韩精品v韩国精品v| 91欧美激情一区二区三区成人| 久久国产精品一区二区| 盗摄精品av一区二区三区| 日本aⅴ免费视频一区二区三区| 亚洲成人精品一区| 亚洲一卡二卡三卡四卡五卡| 一区二区三区不卡视频 | 在线免费亚洲电影| 色综合av在线| 在线观看视频一区二区欧美日韩| 色狠狠一区二区三区香蕉| 91看片淫黄大片一级| 99精品久久只有精品| 一本久久a久久免费精品不卡| 9久草视频在线视频精品| 99国产欧美另类久久久精品| 91视频91自| 欧美曰成人黄网| 欧美日韩视频在线观看一区二区三区| 欧美性三三影院| 欧美日韩二区三区| 91精品国产麻豆国产自产在线| 日韩欧美在线影院| 精品国产一区二区三区久久影院| 日韩欧美你懂的| 欧美激情自拍偷拍| 亚洲欧美日韩精品久久久久| 亚洲一区二区三区爽爽爽爽爽 | 日韩精品一区二区三区swag| 精品国内二区三区| 国产欧美视频一区二区三区| 国产精品免费久久| 亚洲午夜激情av| 轻轻草成人在线| 国产精品一二二区| 99久久免费国产| 7777精品伊人久久久大香线蕉经典版下载| 777欧美精品| 久久久91精品国产一区二区三区| 日本一区二区三区四区 | 视频一区视频二区中文| 久久99久久久久| 成人午夜大片免费观看| 欧美午夜一区二区三区免费大片| 欧美精品一卡两卡| 久久久国际精品| 亚洲精品国产a| 男女性色大片免费观看一区二区 | 精品久久久久一区| 中文字幕av一区二区三区免费看| 亚洲精品综合在线| 另类成人小视频在线| 99在线精品视频| 91精品国产91热久久久做人人 | 在线观看精品一区| 欧美videossexotv100| 亚洲欧美区自拍先锋| 麻豆国产欧美一区二区三区| 99精品视频中文字幕| 日韩丝袜美女视频| 亚洲精品久久久蜜桃| 国内精品久久久久影院色| 91国偷自产一区二区开放时间| 亚洲自拍偷拍综合| 国产宾馆实践打屁股91| 欧美日韩国产123区| 国产精品久久久久久亚洲伦| 免费高清成人在线| 欧美主播一区二区三区美女| 久久久久88色偷偷免费| 肉肉av福利一精品导航| 91在线播放网址| 久久精品亚洲麻豆av一区二区 | 成人精品高清在线| 欧美一区二区啪啪| 一级中文字幕一区二区| 国产成人亚洲精品青草天美| 欧美一级高清片在线观看| 亚洲一区中文在线| 99精品久久只有精品| 国产欧美日韩另类一区| 久久国内精品自在自线400部| 欧洲精品一区二区三区在线观看| 中文字幕精品三区| 国产乱人伦偷精品视频免下载| 91精品久久久久久久99蜜桃 | 天天综合天天做天天综合| 99视频在线精品| 国产精品久久影院| 国产1区2区3区精品美女| 久久看人人爽人人| 九九久久精品视频| 精品国产91乱码一区二区三区| 亚洲在线观看免费视频| 在线日韩一区二区| 一区二区成人在线观看| 在线观看不卡一区| 亚洲一区二区三区在线| 色婷婷久久久久swag精品 | 成人丝袜视频网| 国产精品丝袜在线| 成人福利电影精品一区二区在线观看| 国产三级久久久| 国产伦理精品不卡| 国产亚洲人成网站| 成人综合在线观看| 中文字幕一区二区三区av| 99精品1区2区| 亚洲图片欧美一区| 欧美精选在线播放| 免费成人深夜小野草| 精品国产伦理网| 国产iv一区二区三区| 国产欧美日韩卡一| 成人sese在线| 亚洲精品第1页| 欧美日韩三级视频| 免费黄网站欧美| 欧美国产一区在线| 91丨porny丨中文| 亚洲成人久久影院| 久久影院电视剧免费观看| 成人app下载| 亚洲线精品一区二区三区八戒| 欧美日韩国产首页在线观看| 久久成人18免费观看| 中文字幕精品一区二区精品绿巨人| 99天天综合性| 日韩精品色哟哟| 亚洲国产精品高清| 欧美日韩一区二区三区在线| 老汉av免费一区二区三区 | 国产99一区视频免费| 国产精品超碰97尤物18| 欧美三级在线看| 国产真实乱对白精彩久久|