Chapter 8. Live Graphics

The Go engine can display graphical data on the Go board while a command is in progress by writing draw commands to the standard error stream. Every line that starts with gogui-gfx: is interpreted by GoGui as a draw command using the same syntax as in the gfx Analyze command type. The additional command CLEAR can be used for clearing all markup. If no draw command follows immediately after gogui-gfx:, all following lines until the next empty line will be interpreted as draw commands. See the dummy_live_gfx command in gtpdummy(1) for an example.

Note

Since the parsing of the standard error stream stops when the command response is received, and Java does not allow to guarantee the correct order of standard error and response stream, there is a small chance that a live graphics command, which arrives shortly before the response, is handled during the next GTP command. You can avoid this situation by explicitly writing a gogui-gfx: CLEAR command to standard error before the command ends.