1
0
Fork 0
mirror of https://github.com/sockspls/badfish synced 2025-07-11 19:49:14 +00:00

Last touches in history.h

No functional change.

Signed-off-by: Marco Costalba <mcostalba@gmail.com>
This commit is contained in:
Marco Costalba 2011-01-15 14:58:25 +01:00
parent 04001f776e
commit e06c99cad0

View file

@ -23,8 +23,8 @@
#include <cstring> #include <cstring>
#include "depth.h" #include "depth.h"
#include "move.h"
#include "piece.h" #include "piece.h"
#include "square.h"
#include "value.h" #include "value.h"
@ -40,12 +40,12 @@ class History {
public: public:
History() { clear(); } History() { clear(); }
void clear(); void clear();
int value(Piece p, Square to) const; Value value(Piece p, Square to) const;
void update(Piece p, Square to, Value delta); void update(Piece p, Square to, Value bonus);
Value gain(Piece p, Square to) const; Value gain(Piece p, Square to) const;
void update_gain(Piece p, Square to, Value delta); void update_gain(Piece p, Square to, Value gain);
static const int MaxValue = (1 << 29); // To avoid an overflow static const Value MaxValue = Value(1 << 29); // To avoid an overflow
private: private:
Value history[16][64]; // [piece][to_square] Value history[16][64]; // [piece][to_square]
@ -53,11 +53,11 @@ private:
}; };
inline void History::clear() { inline void History::clear() {
memset(history, 0, 16 * 64 * sizeof(int)); memset(history, 0, 16 * 64 * sizeof(Value));
memset(maxGains, 0, 16 * 64 * sizeof(int)); memset(maxGains, 0, 16 * 64 * sizeof(Value));
} }
inline int History::value(Piece p, Square to) const { inline Value History::value(Piece p, Square to) const {
return history[p][to]; return history[p][to];
} }
@ -70,7 +70,7 @@ inline Value History::gain(Piece p, Square to) const {
} }
inline void History::update_gain(Piece p, Square to, Value gain) { inline void History::update_gain(Piece p, Square to, Value gain) {
maxGains[p][to] = (gain >= maxGains[p][to] ? gain : maxGains[p][to] - 1); maxGains[p][to] = Max(gain, maxGains[p][to] - 1);
} }
#endif // !defined(HISTORY_H_INCLUDED) #endif // !defined(HISTORY_H_INCLUDED)