]> git.entuzijast.net Git - imunes.git/commitdiff
Link parameters can now (again) be changed during simulation.
authormiljenko <miljenko>
Tue, 6 Dec 2005 08:55:30 +0000 (08:55 +0000)
committermiljenko <miljenko>
Tue, 6 Dec 2005 08:55:30 +0000 (08:55 +0000)
(proc execSetLinkParams)

Bug found by:
Submitted by:
Requested by:
Reviewed by:
Approved by:
Obtained from:

editor.tcl
exec.tcl

index c3fefe768e20e588131af63d4387ff9aa8776ee7..c12ade842a7162eba5426ae87c640bcafcec9e97 100755 (executable)
@@ -1825,6 +1825,9 @@ proc popupConfigApply { wi object_type target close phase } {
                }
                set changed 1
            }
+            if { $changed == 1 } {
+                execSetLinkParams $eid $target
+            }
        }
     }
     if { $changed == 1 } {
index f9fa2d40c35d762926b8e3872e66fdda912edf72..147b28add822d7af259145d59287df85e77d9d4b 100755 (executable)
--- a/exec.tcl
+++ b/exec.tcl
@@ -378,10 +378,6 @@ proc deployCfg {} {
            statline "Creating link $link"
        }
 
-       set bandwidth [expr [getLinkBandwidth $link] + 0]
-       set delay [expr [getLinkDelay $link] + 0]
-       set ber [expr [getLinkBER $link] + 0]
-       set dup [expr [getLinkDup $link] + 0]
        set lname $eid\_$lnode1-$lnode2
 
        set ngpeer1 \
@@ -400,10 +396,7 @@ proc deployCfg {} {
 #nexec ngctl msg $lname: setcfg "{ header_offset=14 }" HDLC ???
 
        # Link parameters
-       nexec ngctl msg $lname: setcfg \
-               "{ bandwidth=$bandwidth delay=$delay \
-                  upstream={ BER=$ber duplicate=$dup } \
-                  downstream={ BER=$ber duplicate=$dup } }"
+       execSetLinkParams
 
        # Queues
        foreach node [list $lnode1 $lnode2] {
@@ -604,3 +597,22 @@ proc execSetIfcQLen { eid node ifc qlen } {
     }
 }
 
+
+proc execSetLinkParams { eid link } {
+    set lnode1 [lindex [linkPeers $link] 0]
+    set lnode2 [lindex [linkPeers $link] 1]
+    set lname $eid\_$lnode1-$lnode2
+
+    set bandwidth [expr [getLinkBandwidth $link] + 0]
+    set delay [expr [getLinkDelay $link] + 0]
+    set ber [expr [getLinkBER $link] + 0]
+    set dup [expr [getLinkDup $link] + 0]
+
+    set mmdelay $delay
+    if { $delay == 0 } { set mmdelay -1 } 
+    nexec ngctl msg $lname: setcfg \
+       "{ bandwidth=$bandwidth delay=$mmdelay \
+          upstream={ BER=$ber duplicate=$dup } \
+          downstream={ BER=$ber duplicate=$dup } }"
+}
+