]>
Commit | Line | Data |
---|---|---|
82d6eed5 SW |
1 | #ifndef _SLIDING_TILE_LIB_H |
2 | #define _SLIDING_TILE_LIB_H | |
3 | ||
32688d85 | 4 | #include <istream> |
cada47bf | 5 | #include <ostream> |
32688d85 | 6 | |
e86755d7 SW |
7 | const int BOARD_DIM = 4; |
8 | const int BOARD_SIZE = BOARD_DIM * BOARD_DIM; | |
32688d85 | 9 | |
19bd29f9 SW |
10 | struct Board { |
11 | signed char board[BOARD_SIZE]; | |
cea272cf SW |
12 | bool is_valid() const; |
13 | signed char hole() const; | |
19bd29f9 | 14 | }; |
32688d85 | 15 | std::istream& operator>>(std::istream& is, Board& board); |
cada47bf | 16 | std::ostream& operator<<(std::ostream& os, const Board& board); |
32688d85 | 17 | |
82d6eed5 SW |
18 | extern signed char adjacent[BOARD_SIZE][5]; |
19 | ||
20 | #endif /* _SLIDING_TILE_LIB_H */ |