1 #ifndef HASHPROBE_H_INCLUDED
2 #define HASHPROBE_H_INCLUDED
10 #include <grpc++/server.h>
11 #include <grpc++/server_builder.h>
12 #include "hashprobe.grpc.pb.h"
14 class HashProbeImpl final : public hashprobe::HashProbe::Service {
16 grpc::Status Probe(grpc::ServerContext* context,
17 const hashprobe::HashProbeRequest* request,
18 hashprobe::HashProbeResponse *response);
21 void FillMove(Position* pos, Move move, hashprobe::HashProbeMove* decoded);
22 void ProbeMove(Position* pos, std::deque<StateInfo>* setup_states, bool invert, hashprobe::HashProbeLine* response);
23 void FillValue(Value value, hashprobe::HashProbeScore* score);
26 class HashProbeThread {
28 HashProbeThread(const std::string &server_address);
32 HashProbeImpl service;
33 grpc::ServerBuilder builder;
34 std::unique_ptr<grpc::Server> server;