示例#1
0
 public PerftRunner(IPerftClient testClient, IPerftClient verificationClient, BoardFactory boardFactory, FenSerializerService fenSerializer)
 {
     _testClient         = testClient;
     _verificationClient = verificationClient;
     _boardFactory       = boardFactory;
     _fenSerializer      = fenSerializer;
 }
示例#2
0
        private IDictionary <string, MoveAndNodes> GetResults(IPerftClient client, string fen, int depth, IEnumerable <string> filter = null)
        {
            client.SetBoard(fen);
            var results = client.GetMovesAndNodes(depth);

            if (filter != null)
            {
                var filterMap = filter as HashSet <string> ?? new HashSet <string>(filter);
                results = results.Where(result => filterMap.Contains(result.Move)).ToList();
            }
            var dictionary = results.ToDictionary(result => result.Move);

            return(dictionary);
        }
 public PerftRunner(PerftService perftService, IPerftClient client, BoardFactory boardFactory)
 {
     PerftService = perftService;
     Client       = client;
     BoardFactory = boardFactory;
 }