/usr/include/osl/game_playing/weightTracer.h is in libosl-dev 0.8.0-1.4.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 | /* winCountTracer.h
*/
#ifndef GAME_PLAYING_WEIGHTTRACER_H
#define GAME_PLAYING_WEIGHTTRACER_H
#include "osl/game_playing/openingBookTracer.h"
#include "osl/book/openingBook.h"
#include <stack>
namespace osl
{
namespace book
{
class WeightedBook;
}
namespace game_playing
{
/**
* WeightedBookの追跡
*/
class WeightTracer : public OpeningBookTracer
{
public:
typedef book::WeightedBook WeightedBook;
protected:
WeightedBook& book;
int state_index, start_index;
Player turn;
std::stack<int> state_stack;
const osl::Move selectMoveAtRandom(const std::vector<osl::book::WMove>& moves) const;
const int weight_coef_for_the_initial_move;
const int weight_coef;
public:
explicit WeightTracer(WeightedBook&, bool verbose=false,
const int weight_coef_for_the_initial_move = 16,
const int weight_coef = 10);
WeightTracer(const WeightTracer&);
OpeningBookTracer* clone() const;
void update(Move);
const Move selectMove() const;
int stateIndex() const { return state_index; }
bool isOutOfBook() const;
void popMove();
};
class DeterminateWeightTracer : public WeightTracer
{
/**< select a move from topn moves */
const int topn;
public:
explicit DeterminateWeightTracer(WeightedBook& book, bool verbose=false, const int topn=1,
const int weight_coef_for_the_initial_move = 16,
const int weight_coef = 10)
: WeightTracer(book, verbose, weight_coef_for_the_initial_move, weight_coef),
topn(topn)
{}
DeterminateWeightTracer(const DeterminateWeightTracer& copy)
: WeightTracer(copy), topn(copy.getTopn()) {}
OpeningBookTracer* clone() const;
const Move selectMove() const;
int getTopn() const {return topn;}
};
} // namespace game_playing
} // namespace osl
#endif // GAME_PLAYING_WEIGHTTRACER_H
// ;;; Local Variables:
// ;;; mode:c++
// ;;; c-basic-offset:2
// ;;; coding:utf-8
// ;;; End:
|