pachi_py/pachi/gtp.h (20 lines of code) (raw):

#ifndef PACHI_GTP_H #define PACHI_GTP_H struct board; struct engine; struct time_info; enum parse_code { P_OK, P_NOREPLY, P_DONE_OK, P_DONE_ERROR, P_ENGINE_RESET, P_UNKNOWN_COMMAND, }; enum parse_code gtp_parse(struct board *b, struct engine *e, struct time_info *ti, char *buf); void gtp_reply(int id, ...); bool gtp_is_valid(struct engine *e, const char *cmd); #define is_gamestart(cmd) (!strcasecmp((cmd), "boardsize")) #define is_reset(cmd) (is_gamestart(cmd) || !strcasecmp((cmd), "clear_board") || !strcasecmp((cmd), "kgs-rules")) #define is_repeated(cmd) (strstr((cmd), "pachi-genmoves")) #endif