moveScore.h Source File

- Main Page
- Namespaces
- Classes
- Files

- File List
- File Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
moveScore.h
Go to the documentation of this file.
1 /* moveScore.h
2 */
3 #ifndef OSL_SEARCH_MOVESCORE_H
4 #define OSL_SEARCH_MOVESCORE_H
5 #include "osl/state/numEffectState.h"
6 namespace osl
7 {
8 namespace search
9 {
10 struct MoveScore {
11 Move move;
12 int score;
13 static MoveScore* sortPositive(MoveScore *f, MoveScore *l);
14
15 static MoveScore* generateCapture
16 (const NumEffectState& state, MoveScore *out);
17 template <Player P>
18 static MoveScore* generateCapture
19 (const NumEffectState& state, MoveScore *out);
20 static MoveScore* generateNoCapture
21 (const NumEffectState& state, MoveScore *out);
22 static MoveScore* generateCheckNoCapture
23 (const NumEffectState& state, MoveScore *out);
24 static MoveScore* generateAll
25 (const NumEffectState& state, MoveScore *out);
26 static MoveScore* generateKingEscape
27 (const NumEffectState& state, MoveScore *out);
28 };
29
30 inline bool operator<(const MoveScore& f, const MoveScore& s) {
31 return f.score < s.score;
32 }
33 inline bool operator>(const MoveScore& f, const MoveScore& s) {
34 return f.score > s.score;
35 }
36 }
37 }
38
39 #endif /* OSL_SEARCH_MOVESCORE_H */
40 // ;;; Local Variables:
41 // ;;; mode:c++
42 // ;;; c-basic-offset:2
43 // ;;; End: