X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fhashprobe.proto;h=b02a7a92fccac6313b4e5898893c06d61a6ee953;hp=5df9b9c52945f971bdc1fd2ce53c5cfc683966d0;hb=027ba2704dfbc26e671ca3f0a0db1b01c3becff3;hpb=d963529dcaa3ba80267aaca8b769a3081d2c5da9 diff --git a/src/hashprobe.proto b/src/hashprobe.proto index 5df9b9c5..b02a7a92 100644 --- a/src/hashprobe.proto +++ b/src/hashprobe.proto @@ -1,15 +1,34 @@ syntax = "proto3"; +package hashprobe; message HashProbeRequest { string fen = 1; } message HashProbeResponse { - bool found = 1; - int32 move = 2; - int32 value = 3; - int32 eval = 4; - int32 depth = 5; - int32 bound = 6; + repeated HashProbeLine line = 1; +} +message HashProbeLine { + HashProbeMove move = 1; + bool found = 2; + + repeated HashProbeMove pv = 3; + int32 value = 4; // Dynamic eval (may be inexact, see the "bound" field) + int32 eval = 5; // Static eval + int32 depth = 6; + + enum ValueBound { + BOUND_NONE = 0; + BOUND_UPPER = 1; + BOUND_LOWER = 2; + BOUND_EXACT = 3; + }; + ValueBound bound = 7; +} + +message HashProbeMove { + string from_sq = 1; // a1, a2, etc. + string to_sq = 2; + string promotion = 3; // Q, R, etc. } service HashProbe {