syntax = "proto3";
-
message HashProbeRequest {
string fen = 1;
}
message HashProbeResponse {
bool found = 1;
- int32 move = 2;
- int32 value = 3;
- int32 eval = 4;
+ int32 move = 2; // See types.h
+ int32 value = 3; // Dynamic eval (may be inexact, see the "bound" field)
+ int32 eval = 4; // Static eval
int32 depth = 5;
- int32 bound = 6;
+
+ enum ValueBound {
+ BOUND_NONE = 0;
+ BOUND_UPPER = 1;
+ BOUND_LOWER = 2;
+ BOUND_EXACT = 3;
+ };
+ ValueBound bound = 6;
}
service HashProbe {
response->set_value(entry->value());
response->set_eval(entry->eval());
response->set_depth(entry->depth());
- response->set_bound(entry->bound());
+ response->set_bound(HashProbeResponse::ValueBound(entry->bound()));
}
return Status::OK;
}