1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
#include <stdint.h>
#include "enums.h"
enum PTN_PARSE_RESULT { PTN_VALID, PTN_INVALID };
enum PTN_PARSE_RESULT
parse_place(const uint8_t board_size, char *ptn,
uint8_t *out_location, enum STONE_VARIANT *out_stone);
enum PTN_PARSE_RESULT
parse_move(const uint8_t board_size, char *ptn,
uint8_t *out_location, enum MOVE_DIRECTION *out_direction,
uint8_t *out_steps, uint8_t out_drops[5]);
void
generate_place(const uint8_t board_size, const uint8_t in_location,
const enum STONE_VARIANT in_stone, char out_ptn[4]);
void
generate_move(const uint8_t board_size, const uint8_t in_location,
const enum MOVE_DIRECTION in_direction,
const uint8_t in_steps, const uint8_t in_drops[5],
char out_ptn[10]);
|