|
@@ -79,6 +79,9 @@ class FakeLayer():
|
|
|
def set_current(self, name):
|
|
|
pass
|
|
|
|
|
|
+ def poll(self):
|
|
|
+ pass
|
|
|
+
|
|
|
attribute = []
|
|
|
available_attrs = []
|
|
|
inp_evts = []
|
|
@@ -221,6 +224,9 @@ class MvLayer():
|
|
|
def set_current(self, name):
|
|
|
urllib2.urlopen(urllib2.Request(address, urllib.urlencode({"op": "set_input", "value": '"%s"' % (name), "username": username}))).read()
|
|
|
|
|
|
+ def poll(self):
|
|
|
+ urllib2.urlopen(urllib2.Request(address, urllib.urlencode({"op": "set_input", "value": '"poll"', "username": username}))).read()
|
|
|
+
|
|
|
def lower(value):
|
|
|
return value / JUMP * JUMP
|
|
|
|
|
@@ -466,7 +472,19 @@ reverse_lookup_inp = {}
|
|
|
reverse_lookup_state = {}
|
|
|
reverse_lookup_outp = {}
|
|
|
|
|
|
+glob_max_x = 0.0
|
|
|
+
|
|
|
def update_graphs():
|
|
|
+
|
|
|
+ if state:
|
|
|
+ max_x = state[-1][0]
|
|
|
+ else:
|
|
|
+ max_x = 0.0001
|
|
|
+ global glob_max_x
|
|
|
+ glob_max_x = max(max_x, glob_max_x)
|
|
|
+
|
|
|
+ core.mv.poll()
|
|
|
+
|
|
|
# Input events
|
|
|
times = [x[0] for x in inp_evts]
|
|
|
events = [reverse_lookup_inp.setdefault(x[1], len(reverse_lookup_inp)) for x in inp_evts]
|
|
@@ -475,7 +493,7 @@ def update_graphs():
|
|
|
lookup[v] = k
|
|
|
a_inp.clear()
|
|
|
a_inp.plot(times, events, linestyle="none", marker="o")
|
|
|
- #f_inp.get_axes()[0].set_xbound(lower=0.0, upper=10.0)
|
|
|
+ f_inp.get_axes()[0].set_xbound(lower=0.0, upper=glob_max_x)
|
|
|
f_inp.get_axes()[0].set_yticks(range(-2, len(lookup) + 2))
|
|
|
f_inp.get_axes()[0].set_yticklabels(["", ""] + lookup + ["", ""])
|
|
|
fcanvas_inp.draw()
|
|
@@ -487,11 +505,8 @@ def update_graphs():
|
|
|
for k, v in reverse_lookup_state.items():
|
|
|
lookup[v] = k
|
|
|
a_state.clear()
|
|
|
- a_state.plot(times, events, linestyle="solid", marker="o", drawstyle="steps-post")
|
|
|
- print("Lookup: " + str(lookup))
|
|
|
- print("Reverse lookup: " + str(reverse_lookup_state))
|
|
|
- print("Events: " + str(events))
|
|
|
- #f_state.get_axes()[0].set_xbound(lower=0.0, upper=10.0)
|
|
|
+ a_state.plot(times, events, linestyle="solid", drawstyle="steps-post")
|
|
|
+ f_state.get_axes()[0].set_xbound(lower=0.0, upper=glob_max_x)
|
|
|
f_state.get_axes()[0].set_yticks(range(-2, len(lookup) + 2))
|
|
|
f_state.get_axes()[0].set_yticklabels(["", ""] + lookup + ["", ""])
|
|
|
fcanvas_state.draw()
|
|
@@ -504,11 +519,11 @@ def update_graphs():
|
|
|
lookup[v] = k
|
|
|
a_outp.clear()
|
|
|
a_outp.plot(times, events, linestyle="none", marker="o")
|
|
|
- #f_outp.get_axes()[0].set_xbound(lower=0.0, upper=10.0)
|
|
|
+ f_outp.get_axes()[0].set_xbound(lower=0.0, upper=glob_max_x)
|
|
|
f_outp.get_axes()[0].set_yticks(range(-2, len(lookup) + 2))
|
|
|
f_outp.get_axes()[0].set_yticklabels(["", ""] + lookup + ["", ""])
|
|
|
fcanvas_outp.draw()
|
|
|
root.after(500, update_graphs)
|
|
|
|
|
|
-root.after(500, update_graphs)
|
|
|
+root.after(1, update_graphs)
|
|
|
root.mainloop()
|