12 #ifndef ROOT_TMPWorker
13 #define ROOT_TMPWorker
23 #include <type_traits>
28 TMPWorker() : fNWorkers(0), fMaxNEntries(0),
29 fProcessedEntries(0), fS(), fPid(0), fNWorker(0) { }
30 TMPWorker(
unsigned nWorkers, ULong64_t maxEntries)
31 : fNWorkers(nWorkers), fMaxNEntries(maxEntries),
32 fProcessedEntries(0), fS(), fPid(0), fNWorker(0) { }
33 virtual ~TMPWorker() { }
35 TMPWorker(
const TMPWorker &) =
delete;
36 TMPWorker &operator=(
const TMPWorker &) =
delete;
38 virtual void Init(
int fd,
unsigned workerN);
40 TSocket *GetSocket() {
return fS.get(); }
41 pid_t GetPid() {
return fPid; }
42 unsigned GetNWorker()
const {
return fNWorker; }
47 ULong64_t fMaxNEntries;
48 ULong64_t fProcessedEntries;
50 void SendError(
const std::string& errmsg,
unsigned int code = MPCode::kError);
53 virtual void HandleInput(MPCodeBufPair &msg);
55 std::unique_ptr<TSocket> fS;