libscid snapshot+0cce79d72e38
Chess applications made easy.
Source on GitHub License GPL v2
Loading...
Searching...
No Matches
movespec.h
1#ifndef SCID_MOVESPEC_H
2#define SCID_MOVESPEC_H
3
4#include "scid/_platform.h"
5#include "scid/position.h"
6
7#ifdef __cplusplus
8extern "C"
9{
10#endif
11
12 typedef struct scid_movespec
13 {
14 scid_square from;
15 scid_square to;
16 scid_piece promotion;
17 int is_castling;
19
20
21 SCID_API scid_error
22 scid_movespec_create(
23 scid_square from,
24 scid_square to,
25 scid_piece promotion,
26 int is_castling,
27 scid_movespec* out_move);
28
29
30 SCID_API scid_error
31 scid_movespec_create_from_uci(
32 const char* text,
33 scid_movespec* out_move);
34
35
36 SCID_API scid_error
37 scid_movespec_create_from_san(
38 const scid_position* position,
39 const char* text,
40 scid_movespec* out_move);
41
42
43 SCID_API scid_error
44 scid_movespec_to_uci(
45 scid_movespec move,
46 char* out_text,
47 size_t out_text_capacity,
48 size_t* out_text_size);
49
50
51 SCID_API scid_error
52 scid_movespec_to_san(
53 const scid_position* position,
54 scid_movespec move,
55 char* out_text,
56 size_t out_text_capacity,
57 size_t* out_text_size);
58
59#ifdef __cplusplus
60}
61#endif
62
63#endif
Definition movespec.h:13