]> git.cworth.org Git - ttt/blob - src/ttt-board.h
Moved ttt_board_make_move to ttt-board.c with comment added and prototype in ttt...
[ttt] / src / ttt-board.h
1 /* ttt.c - client-server tic-tac-toe game
2  *
3  * Copyright © 2005 Carl Worth
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2, or (at your option)
8  * any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program; if not, write to the Free Software Foundation,
17  * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18  *
19  * Author: Carl Worth <cworth@cworth.org>
20  */
21
22 #ifndef _TTT_BOARD_H_
23 #define _TTT_BOARD_H_
24
25 #include "ttt.h"
26
27 #define TTT_BOARD_MAX_CELLS 9
28
29 typedef enum {
30     TTT_CELL_EMPTY = '_',
31     TTT_CELL_X     = 'X',
32     TTT_CELL_O     = 'O'
33 } ttt_cell_t;
34
35 typedef struct _ttt_board {
36     ttt_cell_t cells[TTT_BOARD_MAX_CELLS];
37 } ttt_board_t;
38
39 void
40 ttt_board_init (ttt_board_t *board);
41
42 void
43 ttt_board_init_from_string (ttt_board_t *board,
44                             const char  *s);
45
46 char *
47 ttt_board_to_string (ttt_board_t *board);
48
49 void
50 ttt_board_write (ttt_board_t *board, FILE *file);
51
52 int 
53 ttt_board_make_move (ttt_board_t *board, int move);
54
55
56 #endif
57