Logo ROOT   6.30.04
Reference Guide
 All Namespaces Files Pages
TProofServLite.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_TProofServLite
13 #define ROOT_TProofServLite
14 
15 //////////////////////////////////////////////////////////////////////////
16 // //
17 // TProofServLite //
18 // //
19 // TProofServLite is the version of the PROOF worker server for local //
20 // running. The client starts directly the desired number of these //
21 // workers; the master and daemons are eliminated, optimizing the number//
22 // of messages exchanged and created / destroyed. //
23 // //
24 //////////////////////////////////////////////////////////////////////////
25 
26 #include "TProofServ.h"
27 
28 class TProofServLiteInterruptHandler;
29 
30 class TProofServLite : public TProofServ {
31 
32 private:
33  TProofServLiteInterruptHandler *fInterruptHandler;
34  TString fSockPath; // unix socket path
35 
36  Bool_t fTerminated; //true if Terminate() has been already called
37 
38  Int_t Setup();
39  Int_t SetupOnFork(const char *ord);
40 
41 public:
42  TProofServLite(Int_t *argc, char **argv, FILE *flog = 0);
43  virtual ~TProofServLite();
44 
45  Int_t CreateServer();
46 
47  void HandleFork(TMessage *mess);
48 
49  //void HandleUrgentData();
50  void HandleSigPipe();
51  void HandleTermination();
52 
53  void Terminate(Int_t status);
54 
55  ClassDef(TProofServLite,0) //PROOF-Lite Server Application Interface
56 };
57 
58 #endif