-
Notifications
You must be signed in to change notification settings - Fork 0
/
Mind.h
39 lines (30 loc) · 923 Bytes
/
Mind.h
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
/*
* File: Mind.h
* Author: Flip4it chess
*
* Created on March 18, 2010, 12:04 AM
*/
#ifndef _MIND_H
#define _MIND_H
#include "time.h"
#include "stuff.h"
#include "Game.h"
#include "ChessBoard.h"
#include "MoveTree.h"
class Mind {
public:
Mind();
virtual ~Mind();
/*Obtine mutarea optima ce trabuie executata. Intoarce pozitia initiala a piesei (intre 0 si 63) si pozitia finala a piesei
*in movePositions[0], respectiv movePositions[1]. Returneaza tipul piesei mutate; */
PIECE getMove(int *movePositions);
PIECE getKingsEscape(int *movePositions);
char* getSanNegaMax();
private:
PIECE getPiece();
PIECE getPieceMove(PIECE piese,int *movePositions);
PIECE whatPieceAttacksKing(int culoare,int pozKing, BITBOARD *pieceBoard);
PIECE getDesperateMove(int *mobePositions);
MNode *IterativeDeepening(MoveTree* tree,time_t maxDuration);
};
#endif /* _MIND_H */