Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TXProofServ.h
Go to the documentation of this file.
1// @(#)root/proofx:$Id$
2// Author: G. Ganis Oct 2005
3
4/*************************************************************************
5 * Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. *
6 * All rights reserved. *
7 * *
8 * For the licensing terms see $ROOTSYS/LICENSE. *
9 * For the list of contributors see $ROOTSYS/README/CREDITS. *
10 *************************************************************************/
11
12#ifndef ROOT_TXProofServ
13#define ROOT_TXProofServ
14
15//////////////////////////////////////////////////////////////////////////
16// //
17// TXProofServ //
18// //
19// TXProofServ is the XRD version of the PROOF server. It differs from //
20// TProofServ only for the underlying connection technology //
21// //
22//////////////////////////////////////////////////////////////////////////
23
24#include "TProofServ.h"
25#include "TXHandler.h"
26
27class TXProofServInterruptHandler;
28class TXSocketHandler;
29
30class TXProofServ : public TProofServ, public TXHandler {
31
32private:
33 TXProofServInterruptHandler *fInterruptHandler;
36
37 Bool_t fTerminated; //true if Terminate() has been already called
38
39 Int_t LockSession(const char *sessiontag, TProofLockPath **lck);
40
41 Int_t Setup() override;
42
43public:
44 TXProofServ(Int_t *argc, char **argv, FILE *flog = 0);
45 ~TXProofServ() override;
46
47 Int_t CreateServer() override;
48
49 // Disable / Enable read timeout
50 void DisableTimeout() override;
51 void EnableTimeout() override;
52
53 EQueryAction GetWorkers(TList *workers, Int_t &prioritychange,
54 Bool_t resume = kFALSE) override;
55
56 Bool_t HandleError(const void *in = 0) override; // Error Handler
57 Bool_t HandleInput(const void *in = 0) override; // Input handler
58
59 void HandleUrgentData() override;
60 void HandleSigPipe() override;
61 void HandleTermination() override;
62
63 void ReleaseWorker(const char *ord) override;
64 void Terminate(Int_t status) override;
65
66 ClassDefOverride(TXProofServ,0) //XRD PROOF Server Application Interface
67};
68
69#endif
constexpr Bool_t kFALSE
Definition RtypesCore.h:101
#define ClassDefOverride(name, id)
Definition Rtypes.h:341
A doubly linked list.
Definition TList.h:38
Class providing the PROOF server.
Definition TProofServ.h:66
friend class TXProofServ
Definition TProofServ.h:69
Basic string class.
Definition TString.h:139
Handler of asynchronous events for XProofD sockets.
Definition TXHandler.h:28
This class implements the XProofD version of TProofServ, with respect to which it differs only for th...
Definition TXProofServ.h:30
TString fSockPath
Definition TXProofServ.h:35
void ReleaseWorker(const char *ord) override
Send message to intermediate coordinator to release worker of last ordinal ord.
void HandleUrgentData() override
Handle high priority data sent by the master or client.
Int_t Setup() override
Print the ProofServ logo on standard output.
Bool_t fTerminated
Definition TXProofServ.h:37
void Terminate(Int_t status) override
Terminate the proof server.
void HandleSigPipe() override
Called when the client is not alive anymore; terminate the session.
~TXProofServ() override
Cleanup.
Bool_t HandleError(const void *in=0) override
Handle error on the input socket.
void EnableTimeout() override
Enable read timeout on the underlying socket.
TXProofServInterruptHandler * fInterruptHandler
Definition TXProofServ.h:33
EQueryAction GetWorkers(TList *workers, Int_t &prioritychange, Bool_t resume=kFALSE) override
Get list of workers to be used from now on.
void DisableTimeout() override
Disable read timeout on the underlying socket.
Int_t CreateServer() override
Finalize the server setup.
Bool_t HandleInput(const void *in=0) override
Handle asynchronous input on the input socket.
Int_t LockSession(const char *sessiontag, TProofLockPath **lck)
Try locking query area of session tagged sessiontag.
TXSocketHandler * fInputHandler
Definition TXProofServ.h:34
void HandleTermination() override
Called when the client is not alive anymore; terminate the session.
Input handler for XProofD sockets.