19 #ifndef __HYBRIDCLIENT_H__
20 #define __HYBRIDCLIENT_H__
23 #include "percyclient.h"
24 #include "recursiveparams.h"
41 nservers_t
num_servers, nservers_t
t, sid_t * sids = NULL,
52 virtual void encode_request_impl (nqueries_t request_identifier);
53 virtual dbsize_t send_request_impl (nqueries_t request_identifier,
54 vector<ostream*> &osvec,
bool send_num_queries =
true);
55 virtual dbsize_t receive_replies_impl (nqueries_t request_identifier,
56 vector<istream*> &isvec);
57 virtual nqueries_t process_replies_impl (nservers_t h,
58 vector<vector<PercyResult> >& results);
61 std::vector<PercyClient*> iteration_clients;
65 std::map<nqueries_t, std::vector<std::vector<nqueries_t> > > req_ids;
69 std::map<nqueries_t, std::vector<nqueries_t> > unprocessed;
Definition: recursiveparams.h:24
Definition: percystats.h:66
const PercyClientParams * clientparams
Parameters for the client.
Definition: percyclient.h:181
RecursiveClient(const RecursiveClientParams *clientparams, nservers_t num_servers, nservers_t t, sid_t *sids=NULL, PercyStats *stats=NULL)
Constructor.
nservers_t t
The privacy level.
Definition: percyclient.h:186
Definition: recursiveparams.h:73
A PIR client for recursive PIR protocols.
Definition: recursiveclient.h:30
~RecursiveClient()
Destructor.
nservers_t num_servers
The number of servers.
Definition: percyclient.h:183
An abstract base class for a PIR client.
Definition: percyclient.h:35