MCPcopy Create free account
hub / github.com/OpenImageDebugger/OpenImageDebugger / OpenImageDebuggerEvents

Class OpenImageDebuggerEvents

resources/oidscripts/events.py:12–55  ·  view source on GitHub ↗

Handles events raised by the debugger bridge

Source from the content-addressed store, hash-verified

10
11
12class OpenImageDebuggerEvents(BridgeEventHandlerInterface):
13 """
14 Handles events raised by the debugger bridge
15 """
16 def __init__(self, window, debugger):
17 self._window = window
18 self._debugger = debugger
19
20 def _set_symbol_complete_list(self):
21 """
22 Retrieve the list of available symbols and provide it to the OID window
23 for autocompleting.
24 """
25 observable_symbols = list(self._debugger.get_available_symbols())
26 if self._window.is_ready():
27 self._window.set_available_symbols(observable_symbols)
28
29 def exit_handler(self):
30 self._window.terminate()
31
32 def stop_handler(self):
33 """
34 The debugger has stopped (e.g. a breakpoint was hit). We must list all
35 available buffers and pass it to the Open Image Debugger window.
36 """
37 # Block until the window is up and running
38 if not self._window.is_ready():
39 self._window.initialize_window()
40 while not self._window.is_ready():
41 time.sleep(0.1)
42
43 # Update buffers being visualized
44 observed_buffers = self._window.get_observed_buffers()
45 for buffer_name in observed_buffers:
46 self._window.plot_variable(buffer_name)
47
48 # Set list of available symbols
49 self._set_symbol_complete_list()
50
51 def plot_handler(self, variable_name):
52 """
53 Command window to plot variable_name if user requests from debugger log
54 """
55 self._window.plot_variable(variable_name)

Callers 1

mainFunction · 0.90

Calls

no outgoing calls

Tested by

no test coverage detected