An (optional) ComputeGraph and window title with which to immediately initialize the UI. If None is provided, the user will be prompted to select a ComputeGraph file using a file browser.
Learning rate for the leaky integrator that calculates the graph's rate of execution
Interval between updates to the counters tracking simulation tick and tick rate
(Re-)Initializes the core components of the UI (run controls, network viewer, probe desktop) and installs them in the main window.
(Re-)Initializes the core components of the UI (run controls, network viewer, probe desktop) and installs them in the main window.
The old GUI components and any references to the old graph are destroyed.
The DebuggerState this GUI is associated with
Prompt the user with an open dialog to load a saved computegraph file from disk, and if approved, instantiate the computegraph and reinitialize the GUI to display display its contents, throwing out anything pertaining to the old.
Prompt the user with an open dialog to load a saved computegraph file from disk, and if approved, instantiate the computegraph and reinitialize the GUI to display display its contents, throwing out anything pertaining to the old.
A DebuggerState used as a hint to determine the chooser's starting directory in the event there have been no computegraph files recently saved/opened.
Prompt the user with a save dialog to select a file into which to save the current ComputeGraph, and if approved by the user, write the computegraph to disk.
Prompt the user with a save dialog to select a file into which to save the current ComputeGraph, and if approved by the user, write the computegraph to disk.
A DebuggerState used as a hint to determine the chooser's starting directory in the event there have been no computegraph files recently saved/opened.
Restore the debugger to a state described in the given XML node.
Restore the debugger to a state described in the given XML node.
Restore the debugger to a state defined by an XML file present on disk.
Restore the debugger to a state defined by an XML file present on disk. At present, state that can be restored is mostly related to probe frames: which visualizations are open, their size and position, and the state of their buttons and dropdowns.
Describe the current debugger state in an XML element.
Describe the current debugger state in an XML element. This description includes mostly layout-related information (size and position of the debugger window and probe frames), but also includes the state of buttons and dropdowns on most probe frames.
The root XML node describing this debugger session.
Save any layout-related information of the current debugger session to disk so that the debugger can be restored to its current state on a subsequent run.
Save any layout-related information of the current debugger session to disk so that the debugger can be restored to its current state on a subsequent run. Layout-relted information includes the size and position of the debugger window, the location of any dividers for the various panes, the size and position of probe frames open on the desktop, and the state of any buttons or dropdowns on those probe frames.
Builds a toolbar with controls for stepping the compute graph and controlling the rate at which probes refresh.
Builds a toolbar with controls for stepping the compute graph and controlling the rate at which probes refresh. This toolbar is also home to the cycle counter and cycles/sec readout.
The GUI's main toolbar component
Builds the ProbeDesktop.
Builds the ProbeDesktop.
Disconnect event transport between any components in the current UI, if it exists (else do nothing).
Disconnect event transport between any components in the current UI, if it exists (else do nothing).
Implements the main window for the Cog Ex Machina Visual Debugging Tool.
The debugger consists of two large views and a main toolbar:
The first of the main views displays the structure of probed fields in a compute graph. It can show data dependencies between fields by drawing the actual graph, or more compactly just show the fields without their data connections. Clicking a field in this first main view launches a probe window on the second view.
The second view serves as the home for probe windows. A probe window visualizes the current state of a field in some manner (exactly how is dependent on what type of field is being probed; some fields have several visualizations that a user can switch between). Probe windows can be rearranged, resized, and closed on this view.
The main toolbar hosts controls for stepping, running continuously, stopping, and resetting the ComputeGraph. It also hosts counters for monitoring the current simulation time and rate of execution.
---
Until we're past our demo in mid-August, the Cog 4 browser's toolbars have been reworked to look more like they did in Cog 3, so that we don't have to rewrite the whole programmer's manual. That mostly means no menubar and different button placements on the toolbars.