1 /***************************************************************************
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
10 * Copyright (C) 2007-2009 Joshua Simmons <mud at majidejima dot com>
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
18 * KIND, either express or implied.
20 ****************************************************************************/
27 /* Call whenever anything saveable in the SGF file might have changed */
28 void set_game_modified (void);
30 /* Setup a new game, clearing anything currently in the SGF tree Returns
31 false on failure, in which case the old data is NOT guaranteed to be
33 bool setup_game (int width
, int height
, int handicap
, int komi
);
35 /* Load a game from a file, clearing anything currently in the SGF tree
36 Returns false on failure, in which case the old data is NOT guaranteed
37 to be available anymore */
38 bool load_game (const char *filename
);
40 /* Save the data in the SGF tree to a file. Returns false on failure */
41 bool save_game (const char *filename
);
43 /* The number of the current move (starts at 0, first move is 1) */
46 /* The color of the current_player, either BLACK or WHITE */
47 extern unsigned char current_player
;
48 /* Where should we save to if explicitly saved? */
49 extern char save_file
[];
50 /* True if there are unsaved changes in the file */
51 extern bool game_dirty
;
53 /* True if there are changes that have been neither autosaved nor saved */
54 extern bool autosave_dirty
;
56 /* The game metadata */
57 extern struct header_t header
;