blob: 5caf71e57b519c33d8b505e9f0730c791be3efa5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
#ifndef IPC_C
#define IPC_C
#include "ipc.h"
comm_moves comm_moves_init() {
return (comm_moves) {
malloc(sizeof(struct uci_move) * 50),
0,
50
};
}
void add_comm_move(comm_moves *moves, struct uci_move move) {
if (moves->count + 1 > moves->capacity) {
moves->capacity += 50;
moves->moves = realloc(
moves->moves,
moves->capacity * sizeof(struct uci_move)
);
}
moves->moves[moves->count++] = move;
}
bool should_continue(struct engine_message *message, struct go_args* go) {
int depth;
int nodes;
int mate;
if (go->depth && (go->depth >= message->depth)) {
return false;
}
if (go->nodes && (go->nodes >= message->nodes)) {
message->node_limit = true;
return false;
}
if (go->mate && message->mate && (go->mate <= message->mate)) {
return false;
}
return true;
}
#include "fen.c"
#include "bitboard.c"
#endif // IPC_C
|