7
7
from struct import unpack_from
8
8
from threading import Thread
9
9
from time import sleep
10
-
10
+ from argparse import ArgumentParser
11
11
12
12
def send_tm (simulator ):
13
13
tm_socket = socket .socket (socket .AF_INET , socket .SOCK_DGRAM )
@@ -25,7 +25,7 @@ def send_tm(simulator):
25
25
tm_socket .sendto (packet , ('127.0.0.1' , 10015 ))
26
26
simulator .tm_counter += 1
27
27
28
- sleep (1 )
28
+ sleep (1 / simulator . rate )
29
29
30
30
31
31
def receive_tc (simulator ):
@@ -39,12 +39,13 @@ def receive_tc(simulator):
39
39
40
40
class Simulator ():
41
41
42
- def __init__ (self ):
42
+ def __init__ (self , rate ):
43
43
self .tm_counter = 0
44
44
self .tc_counter = 0
45
45
self .tm_thread = None
46
46
self .tc_thread = None
47
47
self .last_tc = None
48
+ self .rate = rate
48
49
49
50
def start (self ):
50
51
self .tm_thread = Thread (target = send_tm , args = (self ,))
@@ -63,9 +64,16 @@ def print_status(self):
63
64
64
65
65
66
if __name__ == '__main__' :
66
- simulator = Simulator ()
67
+ parser = ArgumentParser ()
68
+ parser .add_argument ("-r" , "--rate" ,
69
+ dest = "rate" ,
70
+ default = 1 ,
71
+ type = int ,
72
+ help = "Playback rate. 1 = 1Hz, 10 = 10Hz, etc." )
73
+ args = parser .parse_args ()
74
+ simulator = Simulator (args .rate )
67
75
simulator .start ()
68
-
76
+ sys . stdout . write ( 'Using playback rate of ' + str ( args . rate ) + 'Hz \r \n ' );
69
77
try :
70
78
prev_status = None
71
79
while True :
0 commit comments