This file is indexed.

/usr/include/osl/game_playing/bookPlayer.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
/* bookPlayer.h
 */
#ifndef GAME_PLAYING_BOOKPLAYER_H
#define GAME_PLAYING_BOOKPLAYER_H

#include "osl/game_playing/computerPlayer.h"

namespace osl
{
  namespace game_playing
  {
    class OpeningBookTracer;
    /**
     * 定跡がある間は定跡を使うComputerPlayer
     */
    class BookPlayer 
      : public ComputerPlayer,
	public ComputerPlayerSelectBestMoveInTime
    {
      std::unique_ptr<OpeningBookTracer> book;
      std::unique_ptr<ComputerPlayer> searcher;
      int book_limit;
      int current_moves;
      bool valid_initial_position;
    public:
      /** 所有権移転: new したものを渡すこと */
      BookPlayer(OpeningBookTracer*, ComputerPlayer*);
      ~BookPlayer();
      ComputerPlayer* clone() const;

      /** 何手まで定跡を使うかを設定. -1 なら無限大 */
      void setBookLimit(int new_limit);

      void setInitialState(const NumEffectState&);
      void pushMove(Move m);
      void popMove();
      const MoveWithComment selectBestMove(const GameState&, int seconds, int elapsed,
					int byoyomi);
      const MoveWithComment selectBestMoveInTime(const GameState&, const search::TimeAssigned&);

      bool bookAvailable() const;

      // delegations ...
      void allowSpeculativeSearch(bool value);
      virtual bool stopSearchNow();
      /** 注意: 定跡に関しては指定は無効 */
      void setRootIgnoreMoves(const MoveVector *rim, bool prediction);
    private:
      const Move moveByBook(const GameState& state);
    };

  } // namespace game_playing
} // namespace osl


#endif /* GAME_PLAYING_BOOKPLAYER_H */
// ;;; Local Variables:
// ;;; mode:c++
// ;;; c-basic-offset:2
// ;;; End: