|
|
| 365 |
self.quit = False |
365 |
self.quit = False |
| 366 |
self.sim_helper = ns.visualizer.PyViz() |
366 |
self.sim_helper = ns.visualizer.PyViz() |
| 367 |
self.pause_messages = [] |
367 |
self.pause_messages = [] |
|
|
368 |
self.simtime = -1 |
| 368 |
|
369 |
|
| 369 |
def set_nodes_of_interest(self, nodes): |
370 |
def set_nodes_of_interest(self, nodes): |
| 370 |
self.lock.acquire() |
371 |
self.lock.acquire() |
|
|
| 372 |
self.sim_helper.SetNodesOfInterest(nodes) |
373 |
self.sim_helper.SetNodesOfInterest(nodes) |
| 373 |
finally: |
374 |
finally: |
| 374 |
self.lock.release() |
375 |
self.lock.release() |
|
|
376 |
|
| 377 |
def set_sim_time (self, simtime): |
| 378 |
self.simtime = simtime |
| 375 |
|
379 |
|
| 376 |
def run(self): |
380 |
def run(self): |
| 377 |
while not self.quit: |
381 |
while not self.quit: |
|
|
382 |
if not self.simtime == -1: |
| 383 |
if ns.core.Simulator.Now ().GetSeconds () >= self.simtime: |
| 384 |
self.viz.play_button.set_sensitive(False) |
| 385 |
break |
| 378 |
#print "sim: Wait for go" |
386 |
#print "sim: Wait for go" |
| 379 |
self.go.wait() # wait until the main (view) thread gives us the go signal |
387 |
self.go.wait() # wait until the main (view) thread gives us the go signal |
| 380 |
self.go.clear() |
388 |
self.go.clear() |
|
|
| 1185 |
|
1193 |
|
| 1186 |
gtk.main() |
1194 |
gtk.main() |
| 1187 |
|
1195 |
|
|
|
1196 |
def setSimTime (self, simtime): |
| 1197 |
self.simulation.set_sim_time (simtime) |
| 1198 |
|
| 1188 |
|
1199 |
|
| 1189 |
def on_root_button_press_event(self, view, target, event): |
1200 |
def on_root_button_press_event(self, view, target, event): |
| 1190 |
if event.button == 1: |
1201 |
if event.button == 1: |
|
|
| 1479 |
add_initialization_hook(hook) |
1490 |
add_initialization_hook(hook) |
| 1480 |
|
1491 |
|
| 1481 |
|
1492 |
|
| 1482 |
def start(): |
1493 |
def start(simtime): |
| 1483 |
assert Visualizer.INSTANCE is None |
1494 |
assert Visualizer.INSTANCE is None |
| 1484 |
if _import_error is not None: |
1495 |
if _import_error is not None: |
| 1485 |
import sys |
1496 |
import sys |
|
|
| 1491 |
for hook, args in initialization_hooks: |
1502 |
for hook, args in initialization_hooks: |
| 1492 |
gobject.idle_add(hook, viz, *args) |
1503 |
gobject.idle_add(hook, viz, *args) |
| 1493 |
ns.network.Packet.EnablePrinting() |
1504 |
ns.network.Packet.EnablePrinting() |
|
|
1505 |
viz.setSimTime(simtime) |
| 1494 |
viz.start() |
1506 |
viz.start() |