/usr/include/root/TProofLite.h is in libroot-proof-dev 5.34.30-0ubuntu8.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 | // @(#)root/proof:$Id$
// Author: G. Ganis March 2008
/*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. *
* *
* For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/
#ifndef ROOT_TProofLite
#define ROOT_TProofLite
//////////////////////////////////////////////////////////////////////////
// //
// TProofLite //
// //
// This class starts a PROOF session on the local machine: no daemons, //
// client and master merged, communications via UNIX-like sockets. //
// By default the number of workers started is NumberOfCores+1; a //
// different number can be forced on construction. //
// //
//////////////////////////////////////////////////////////////////////////
#ifndef ROOT_TProof
#include "TProof.h"
#endif
class TDSet;
class TList;
class TQueryResultManager;
class TDataSetManager;
class TProofLockPath;
class TProofMgr;
class TProofQueryResult;
class TServerSocket;
class TSelector;
class TPMERegexp;
class TProofLite : public TProof {
friend class TProofPlayerLite;
private:
Int_t fNWorkers; // Number of workers
TString fSandbox; // PROOF sandbox root dir
TString fCacheDir; // Directory containing cache of user files
TString fQueryDir; // Directory containing query results and status
TString fDataSetDir; // Directory containing info about known data sets
TString fSockPath; // UNIX socket path for communication with workers
TServerSocket *fServSock; // Server socket to accept call backs
Bool_t fForkStartup; // Startup N-1 workers forking the first worker
Int_t fDynamicStartupStep; // Dyn Startup simulation: increment at each call
Int_t fDynamicStartupNMax; // Dyn Startup simulation: max number of workers
TString fVarExp; // Internal variable to pass drawing options
TString fSelection; // Internal variable to pass drawing options
TProofLockPath *fCacheLock; // Cache dir locker
TProofLockPath *fQueryLock; // Query dir locker
TQueryResultManager *fQMgr; // Query-result manager
TDataSetManager *fDataSetManager; // Dataset manager
TDataSetManagerFile *fDataSetStgRepo; // Dataset manager for staging requests
TPMERegexp *fReInvalid; // Regular expression matching invalid dataset URIs
static Int_t fgWrksMax; // Max number of workers
TProofLite(const TProofLite &); // not implemented
void operator=(const TProofLite &); // idem
Int_t CleanupSandbox();
Int_t CreateSandbox();
void FindUniqueSlaves();
void NotifyStartUp(const char *action, Int_t done, Int_t tot);
Int_t SetProofServEnv(const char *ord);
Int_t InitDataSetManager();
void ResolveKeywords(TString &s, const char *ord, const char *logfile);
void SendInputDataFile();
void ShowDataDir(const char *dirname);
protected:
TProofLite() : TProof() { } // For derived classes to use
Int_t CreateSymLinks(TList *files, TList *wrks = 0);
Int_t Init(const char *masterurl, const char *conffile,
const char *confdir, Int_t loglevel,
const char *alias = 0);
TProofQueryResult *MakeQueryResult(Long64_t nent, const char *opt,
Long64_t fst, TDSet *dset,
const char *selec);
void SetQueryRunning(TProofQueryResult *pq);
Int_t SetupWorkers(Int_t opt = 0, TList *wrks = 0);
Int_t CopyMacroToCache(const char *macro, Int_t headerRequired = 0,
TSelector **selector = 0, Int_t opt = 0, TList *wrks = 0);
Int_t PollForNewWorkers();
public:
TProofLite(const char *masterurl, const char *conffile = kPROOF_ConfFile,
const char *confdir = kPROOF_ConfDir, Int_t loglevel = 0,
const char *alias = 0, TProofMgr *mgr = 0);
virtual ~TProofLite();
void Print(Option_t *option="") const;
Long64_t DrawSelect(TDSet *dset, const char *varexp,
const char *selection = "",
Option_t *option = "", Long64_t nentries = -1,
Long64_t firstentry = 0);
Long64_t Process(TDSet *dset, const char *sel, Option_t *o = "",
Long64_t nent = -1, Long64_t fst = 0);
Long64_t Process(TFileCollection *fc, const char *sel, Option_t *o = "",
Long64_t nent = -1, Long64_t fst = 0)
{ return TProof::Process(fc, sel, o, nent, fst); }
Long64_t Process(const char *dsname, const char *sel, Option_t *o = "",
Long64_t nent = -1, Long64_t fst = 0, TObject *enl = 0)
{ return TProof::Process(dsname, sel, o, nent, fst, enl); }
Long64_t Process(const char *sel, Long64_t nent, Option_t *o = "")
{ return TProof::Process(sel, nent, o); }
// Process via TSelector
Long64_t Process(TDSet *dset, TSelector *sel, Option_t *o = "",
Long64_t nent = -1, Long64_t fst = 0)
{ return TProof::Process(dset, sel, o, nent, fst); }
Long64_t Process(TFileCollection *fc, TSelector *sel, Option_t *o = "",
Long64_t nent = -1, Long64_t fst = 0)
{ return TProof::Process(fc, sel, o, nent, fst); }
Long64_t Process(const char *dsname, TSelector *sel, Option_t *o = "",
Long64_t nent = -1, Long64_t fst = 0, TObject *enl = 0)
{ return TProof::Process(dsname, sel, o, nent, fst, enl); }
Long64_t Process(TSelector* sel, Long64_t nent, Option_t *o = "")
{ return TProof::Process(sel, nent, o); }
// Cache management
void ShowCache(Bool_t all = kFALSE);
void ClearCache(const char *file = 0);
Int_t Load(const char *macro, Bool_t notOnClient = kFALSE, Bool_t uniqueOnly = kTRUE,
TList *wrks = 0);
// Data management
void ShowData();
// Query management
TList *GetListOfQueries(Option_t *opt = "");
Int_t Remove(const char *ref, Bool_t all);
// Dataset handling
Bool_t RegisterDataSet(const char *dsName, TFileCollection *ds, const char *opt = "");
Bool_t ExistsDataSet(const char *uri);
TMap *GetDataSets(const char *uri = "", const char * = 0);
void ShowDataSets(const char *uri = "", const char * = 0);
TFileCollection *GetDataSet(const char *uri, const char * = 0);
Int_t RemoveDataSet(const char *uri, const char * = 0);
Bool_t RequestStagingDataSet(const char *dataset);
Bool_t CancelStagingDataSet(const char *dataset);
TFileCollection *GetStagingStatusDataSet(const char *dataset);
Int_t VerifyDataSet(const char *uri, const char * = 0);
Int_t SetDataSetTreeName( const char *dataset, const char *treename);
void ShowDataSetCache(const char *dataset = 0);
void ClearDataSetCache(const char *dataset = 0);
// Browsing
TTree *GetTreeHeader(TDSet *tdset);
static Int_t GetNumberOfWorkers(const char *url = 0);
ClassDef(TProofLite,0) //PROOF-Lite control class
};
#endif
|