| library: libProof #include "TProof.h"
 | 
TProof
class description - source file - inheritance tree (.pdf)
    private:
              TProof(const TProof&)
         void Activate(TList* slaves = 0)
         void ActivateAsyncInput()
         void AskParallel()
         void AskStatistics()
        Int_t Broadcast(const TMessage& mess, TList* slaves)
        Int_t Broadcast(const TMessage& mess, TProof::ESlaves list = kActive)
        Int_t Broadcast(const char* mess, Int_t kind, TList* slaves)
        Int_t Broadcast(const char* mess, Int_t kind = kMESS_STRING, TProof::ESlaves list = kActive)
        Int_t Broadcast(Int_t kind, TList* slaves)
        Int_t Broadcast(Int_t kind, TProof::ESlaves list = kActive)
        Int_t BroadcastObject(const TObject* obj, Int_t kind, TList* slaves)
        Int_t BroadcastObject(const TObject* obj, Int_t kind = kMESS_OBJECT, TProof::ESlaves list = kActive)
        Int_t BroadcastRaw(const void* buffer, Int_t length, TList* slaves)
        Int_t BroadcastRaw(const void* buffer, Int_t length, TProof::ESlaves list = kActive)
        Int_t BuildPackage(const char* package)
       Bool_t CheckFile(const char* file, TSlave* sl, Long_t modtime)
         void CleanGDirectory(TList* ol)
        Int_t Collect(const TSlave* sl)
        Int_t Collect(TMonitor* mon)
        Int_t CollectInputFrom(TSocket* s)
         void DeActivateAsyncInput()
        Int_t DisablePackage(const char* package)
        Int_t DisablePackages()
        Int_t Exec(const char* cmd, TProof::ESlaves list)
      TSlave* FindSlave(TSocket* s) const
         void FindUniqueSlaves()
       TList* GetListOfBadSlaves() const
       TList* GetListOfSlaves() const
       TList* GetListOfUniqueSlaves() const
        Int_t GetNumberOfActiveSlaves() const
        Int_t GetNumberOfBadSlaves() const
        Int_t GetNumberOfSlaves() const
        Int_t GetNumberOfUniqueSlaves() const
        Int_t GetQueryReference(Int_t qry, TString& ref)
        Int_t GoParallel(Int_t nodes, Bool_t accept = kFALSE)
         void HandleAsyncInput(TSocket* s)
         void Interrupt(TProof::EUrgent type, TProof::ESlaves list = kActive)
       Bool_t IsSync() const
        Int_t LoadPackage(const char* package)
         void MarkBad(TSlave* sl)
         void MarkBad(TSocket* s)
         void operator=(const TProof&)
        Int_t Ping(TProof::ESlaves list)
         void RecvLogFile(TSocket* s, Int_t size)
        Int_t SendCommand(const char* cmd, TProof::ESlaves list = kActive)
        Int_t SendCurrentState(TProof::ESlaves list = kActive)
        Int_t SendFile(const char* file, Int_t opt = (kBinary|kForward), const char* rfile = "0", TSlave* sl = 0)
        Int_t SendGroupView()
        Int_t SendInitialState()
        Int_t SendObject(const TObject* obj, TProof::ESlaves list = kActive)
        Int_t SendPrint(Option_t* option = "")
        Int_t UnloadPackage(const char* package)
        Int_t UnloadPackages()
    protected:
                            TProof()
                      Int_t Collect(TProof::ESlaves list = kActive)
                      Int_t Collect(TList* slaves)
                    TSlave* CreateSlave(const char* url, const char* ord, Int_t perf, const char* image, const char* workdir)
                    TSlave* CreateSubmaster(const char* url, const char* ord, const char* image, const char* msd)
                     TList* GetListOfActiveSlaves() const
              TProofPlayer* GetPlayer() const
            TPluginHandler* GetProgressDialog() const
                      Int_t Init(const char* masterurl, const char* conffile, const char* confdir, Int_t loglevel, const char* alias = "0")
      virtual TProofPlayer* MakePlayer()
                       void SetDSet(TDSet* dset)
                       void SetPlayer(TProofPlayer* player)
               static void* SlaveStartupThread(void* arg)
             virtual Bool_t StartSlaves(Bool_t parallel, Bool_t attach = kFALSE)
               virtual void ValidateDSet(TDSet* dset)
    public:
                                        TProof(const char* masterurl, const char* conffile = "kPROOF_ConfFile", const char* confdir = "kPROOF_ConfDir", Int_t loglevel = 0, const char* alias = "0")
                                virtual ~TProof()
                           virtual void AddChain(TChain* chain)
                           virtual void AddFeedback(const char* name)
                           virtual void AddInput(TObject* obj)
                          virtual Int_t Archive(Int_t query, const char* url)
                          virtual Int_t Archive(const char* queryref, const char* url = "0")
                           virtual void Browse(TBrowser* b)
                           virtual void cd(Int_t id = -1)
                         static TClass* Class()
                          virtual Int_t CleanupSession(const char* sessiontag)
                           virtual void ClearCache()
                           virtual void ClearFeedback()
                           virtual void ClearInput()
                          virtual Int_t ClearPackage(const char* package)
                          virtual Int_t ClearPackages()
                           virtual void Close(Option_t* option = "")
                 virtual TDrawFeedback* CreateDrawFeedback()
                           virtual void DeleteDrawFeedback(TDrawFeedback* f)
                           virtual void Detach(Option_t* opt = "")
                          virtual Int_t DrawSelect(TDSet* set, const char* varexp, const char* selection = "", Option_t* option = "", Long64_t nentries = -1, Long64_t firstentry = 0)
                          virtual Int_t EnablePackage(const char* package)
                          virtual Int_t Exec(const char* cmd)
                           virtual void Feedback(TList* objs)
                          virtual Int_t Finalize(Int_t query = -1, Bool_t force = kFALSE)
                          virtual Int_t Finalize(const char* queryref, Bool_t force = kFALSE)
                       virtual Long64_t GetBytesRead() const
                          virtual Int_t GetClientProtocol() const
                    virtual const char* GetConfDir() const
                    virtual const char* GetConfFile() const
                        virtual Float_t GetCpuTime() const
                         virtual TList* GetFeedbackList() const
                    virtual const char* GetImage() const
                         virtual TList* GetListOfQueries(Option_t* opt = "")
                           virtual void GetLog(Int_t start = -1, Int_t end = -1)
                          virtual Int_t GetLogLevel() const
                    virtual const char* GetMaster() const
                           virtual void GetMaxQueries()
                          virtual Int_t GetNumberOfDrawQueries()
                          virtual Int_t GetNumberOfQueries()
                       virtual TObject* GetOutput(const char* name)
                         virtual TList* GetOutputList()
                         virtual TList* GetOutputNames()
                          virtual Int_t GetParallel() const
                          virtual Int_t GetPort() const
      virtual TVirtualProof::EQueryMode GetQueryMode() const
              TVirtualProof::EQueryMode GetQueryMode(Option_t* mode) const
                  virtual TQueryResult* GetQueryResult(const char* ref)
                         virtual TList* GetQueryResults()
                        virtual Float_t GetRealTime() const
                          virtual Int_t GetRemoteProtocol() const
                          virtual Int_t GetSessionID() const
                         virtual TList* GetSlaveInfo()
                          virtual Int_t GetStatus() const
                         virtual TTree* GetTreeHeader(TDSet* tdset)
                    virtual const char* GetUrl() const
                    virtual const char* GetUser() const
                    virtual const char* GetWorkDir() const
                        virtual TClass* IsA() const
                         virtual Bool_t IsDataReady(Long64_t& totalbytes, Long64_t& bytesready)
                         virtual Bool_t IsFolder() const
                         virtual Bool_t IsIdle() const
                         virtual Bool_t IsMaster() const
                         virtual Bool_t IsParallel() const
                         virtual Bool_t IsValid() const
                           virtual void LogMessage(const char* msg, Bool_t all)
                          virtual Int_t Ping()
                           virtual void Print(Option_t* option = "") const
                          virtual Int_t Process(TDSet* set, const char* selector, Option_t* option = "", Long64_t nentries = -1, Long64_t firstentry = 0, TEventList* evl = 0)
                           virtual void Progress(Long64_t total, Long64_t processed)
                           virtual void PutLog(TQueryResult* qr)
                           virtual void QueryResultReady(const char* ref)
                          virtual Int_t Remove(Int_t query)
                          virtual Int_t Remove(const char* queryref, Bool_t all = kFALSE)
                           virtual void RemoveChain(TChain* chain)
                           virtual void RemoveFeedback(const char* name)
                           virtual void ResetProgressDialog(const char* sel, Int_t sz, Long64_t fst, Long64_t ent)
                           virtual void ResetProgressDialogStatus()
                          virtual Int_t Retrieve(Int_t query, const char* path = "0")
                          virtual Int_t Retrieve(const char* queryref, const char* path = "0")
                         virtual Bool_t SendingLogToWindow() const
                           virtual void SendLogToWindow(Bool_t mode)
                           virtual void SetActive(Bool_t = kTRUE)
                           virtual void SetAlias(const char* alias = "")
                           virtual void SetDrawFeedbackOption(TDrawFeedback* f, Option_t* opt)
                           virtual void SetLogLevel(Int_t level, UInt_t mask = TProofDebug::kAll)
                           virtual void SetMaxDrawQueries(Int_t max)
                          virtual Int_t SetParallel(Int_t nodes = 9999)
                                   void SetQueryMode(TVirtualProof::EQueryMode mode)
                           virtual void ShowCache(Bool_t all = kFALSE)
                           virtual void ShowEnabledPackages(Bool_t all = kFALSE)
                           virtual void ShowFeedback() const
                           virtual void ShowLog(Int_t qry = -1)
                           virtual void ShowLog(const char* queryref)
                           virtual void ShowMembers(TMemberInspector& insp, char* parent)
                           virtual void ShowPackages(Bool_t all = kFALSE)
                           virtual void ShowQueries(Option_t* opt = "")
                           virtual void StartupMessage(const char* msg, Bool_t status, Int_t done, Int_t total)
                           virtual void StopProcess(Bool_t abort)
                           virtual void Streamer(TBuffer& b)
                                   void StreamerNVirtual(TBuffer& b)
                          virtual Int_t UploadPackage(const char* par)
    private:
                                                                                             Bool_t fValid                  is this a valid proof object
                                                                                            TString fMaster                 master server ("" if a master); used in the browser
                                                                                            TString fWorkDir                current work directory on remote servers
                                                                                              Int_t fLogLevel               server debug logging level
                                                                                              Int_t fStatus                 remote return status (part of kPROOF_LOGDONE)
                                                                                             TList* fSlaveInfo              !list returned by kPROOF_GETSLAVEINFO
                                                                                             Bool_t fMasterServ             true if we are a master server
                                                                                             Bool_t fSendGroupView          if true send new group view
                                                                                             TList* fActiveSlaves           list of active slaves (subset of all slaves)
                                                                                             TList* fUniqueSlaves           list of all active slaves with unique file systems
                                                                                             TList* fNonUniqueMasters       list of all active masters with a nonunique file system
                                                                                          TMonitor* fActiveMonitor          monitor activity on all active slave sockets
                                                                                          TMonitor* fUniqueMonitor          monitor activity on all unique slave sockets
                                                                                          TMonitor* fCurrentMonitor         caurrently active monitor
                                                                                           Long64_t fBytesRead              bytes read by all slaves during the session
                                                                                            Float_t fRealTime               realtime spent by all slaves during the session
                                                                                            Float_t fCpuTime                CPU time spent by all slaves during the session
                                                                                    TSignalHandler* fIntHandler             interrupt signal handler (ctrl-c)
                                                                                    TPluginHandler* fProgressDialog         progress dialog plugin
                                                                                             Bool_t fProgressDialogStarted  indicates if the progress dialog is up
                                                                                      TProofPlayer* fPlayer                 current player
                                                                                             TList* fFeedback               list of names to be returned as feedback
                                                                                             TList* fChains                 chains with this proof set
      map<TString,TProof::MD5Mod_t,less<TString>,allocator<pair<const TString,TProof::MD5Mod_t> > > fFileMap                map keeping track of a file's md5 and mod time
                                                                                             TDSet* fDSet                   current TDSet being validated
                                                                                             Bool_t fIdle                   on clients, true if no PROOF jobs running
                                                                                             Bool_t fSync                   true if type of currently processed query is sync
                                                                                             Bool_t fRedirLog               redirect received log info
                                                                                            TString fLogFileName            name of the temp file for redirected logs
                                                                                              FILE* fLogFileW               temp file to redirect logs
                                                                                              FILE* fLogFileR               temp file to read redirected logs
                                                                                             Bool_t fLogToWindowOnly        send log to window only
                                                                                             TList* fWaitingSlaves          stores a TPair of the slaves's TSocket and TMessage
                                                                                             TList* fQueries                list of TProofQuery objects
                                                                                              Int_t fOtherQueries           number of queries in list from previous sessions
                                                                                              Int_t fDrawQueries            number of draw queries during this sessions
                                                                                              Int_t fMaxDrawQueries         max number of draw queries kept
                                                                                              Int_t fSeqNum                 Remote sequential # of the last query submitted
                                                                                              Int_t fSessionID              Remote ID of the session
    protected:
                    TUrl fUrl         Url of the master
                 TString fConfFile    file containing config information
                 TString fConfDir     directory containing cluster config information
                 TString fImage       master's image name
                   Int_t fProtocol    remote PROOF server protocol version number
                  TList* fSlaves      list of all slave servers as in config file
                  TList* fBadSlaves   dead slaves (subset of all slaves)
               TMonitor* fAllMonitor  monitor activity on all valid slave sockets
                  Bool_t fDataReady   true if data is ready to be analyzed
                Long64_t fBytesReady  number of bytes staged
                Long64_t fTotalBytes  number of bytes to be analyzed
      static TSemaphore* fgSemaphore  semaphore to control no of parallel startup threads
    public:
                  static const TProof::EUrgent kPing                 
                  static const TProof::EUrgent kHardInterrupt        
                  static const TProof::EUrgent kSoftInterrupt        
                  static const TProof::EUrgent kShutdownInterrupt    
      static const TProof::EProofCacheCommands kShowCache            
      static const TProof::EProofCacheCommands kClearCache           
      static const TProof::EProofCacheCommands kShowPackages         
      static const TProof::EProofCacheCommands kClearPackages        
      static const TProof::EProofCacheCommands kClearPackage         
      static const TProof::EProofCacheCommands kBuildPackage         
      static const TProof::EProofCacheCommands kLoadPackage          
      static const TProof::EProofCacheCommands kShowEnabledPackages  
      static const TProof::EProofCacheCommands kShowSubCache         
      static const TProof::EProofCacheCommands kClearSubCache        
      static const TProof::EProofCacheCommands kShowSubPackages      
      static const TProof::EProofCacheCommands kDisableSubPackages   
      static const TProof::EProofCacheCommands kDisableSubPackage    
      static const TProof::EProofCacheCommands kBuildSubPackage      
      static const TProof::EProofCacheCommands kUnloadPackage        
      static const TProof::EProofCacheCommands kDisablePackage       
      static const TProof::EProofCacheCommands kUnloadPackages       
      static const TProof::EProofCacheCommands kDisablePackages      
             static const TProof::ESendFileOpt kAscii                
             static const TProof::ESendFileOpt kBinary               
             static const TProof::ESendFileOpt kForce                
             static const TProof::ESendFileOpt kForward              
                  static const TProof::ESlaves kAll                  
                  static const TProof::ESlaves kActive               
                  static const TProof::ESlaves kUnique               
                                                                      
 TProof                                                               
                                                                      
 This class controls a Parallel ROOT Facility, PROOF, cluster.        
 It fires the slave servers, it keeps track of how many slaves are    
 running, it keeps track of the slaves running status, it broadcasts  
 messages to all slaves, it collects results, etc.                    
                                                                      
 TProof(const char *masterurl, const char *conffile, const char *confdir,
               Int_t loglevel, const char *alias): fUrl(masterurl)
 Create a PROOF environment. Starting PROOF involves either connecting
 to a master server, which in turn will start a set of slave servers, or
 directly starting as master server (if master = ""). Masterurl is of
 the form: [proof[s]://]host[:port]. Conffile is the name of the config
 file describing the remote PROOF cluster (this argument alows you to
 describe different cluster configurations).
 The default is proof.conf. Confdir is the directory where the config
 file and other PROOF related files are (like motd and noproof files).
 Loglevel is the log level (default = 1). User specified custom config
 files will be first looked for in $HOME/.conffile.
 TProof() : fUrl("")
 Protected constructor to be used by classes deriving from TProof
 (they have to call Init themselves and override StartSlaves
 appropriately).
 This constructor simply closes any previous gProof and sets gProof
 to this instance.
 ~TProof()
 Clean up PROOF environment.
Int_t Init(const char *masterurl, const char *conffile,
                   const char *confdir, Int_t loglevel, const char *alias)
 Start the PROOF environment. Starting PROOF involves either connecting
 to a master server, which in turn will start a set of slave servers, or
 directly starting as master server (if master = ""). For a description
 of the arguments see the TProof ctor. Returns the number of started
 master or slave servers, returns 0 in case of error, in which case
 fValid remains false.
Bool_t StartSlaves(Bool_t parallel, Bool_t attach)
 Start up PROOF slaves.
void Close(Option_t *opt)
 Close all open slave servers.
 Client can decide to shutdown the remote session by passing option is 'S'
 or 's'. Default for clients is detach, if supported. Masters always
 shutdown the remote counterpart.
TSlave* CreateSlave(const char *url, const char *ord,
                            Int_t perf, const char *image, const char *workdir)
 Create a new TSlave of type TSlave::kSlave.
 Note: creation of TSlave is private with TProof as a friend.
 Derived classes must use this function to create slaves.
TSlave* CreateSubmaster(const char *url, const char *ord,
                                const char *image, const char *msd)
 Create a new TSlave of type TSlave::kMaster.
 Note: creation of TSlave is private with TProof as a friend.
 Derived classes must use this function to create slaves.
TSlave* FindSlave(TSocket *s) const
 Find slave that has TSocket s. Returns 0 in case slave is not found.
void FindUniqueSlaves()
 Add to the fUniqueSlave list the active slaves that have a unique
 (user) file system image. This information is used to transfer files
 only once to nodes that share a file system (an image). Submasters
 which are not in fUniqueSlaves are put in the fNonUniqueMasters
 list. That list is used to trigger the transferring of files to
 the submaster's unique slaves without the need to transfer the file
 to the submaster.
Int_t GetNumberOfSlaves() const
 Return number of slaves as described in the config file.
Int_t GetNumberOfActiveSlaves() const
 Return number of active slaves, i.e. slaves that are valid and in
 the current computing group.
Int_t GetNumberOfUniqueSlaves() const
 Return number of unique slaves, i.e. active slaves that have each a
 unique different user files system.
Int_t GetNumberOfBadSlaves() const
 Return number of bad slaves. This are slaves that we in the config
 file, but refused to startup or that died during the PROOF session.
void AskStatistics()
 Ask the for the statistics of the slaves.
void AskParallel()
 Ask the for the number of parallel slaves.
TList* GetListOfQueries(Option_t *opt)
 Ask the master for the list of queries.
Int_t GetNumberOfQueries()
 Number of queries processed by this session
void SetMaxDrawQueries(Int_t max)
 Set max number of draw queries whose results are saved
void GetMaxQueries()
 Get max number of queries whose full results are kept in the
 remote sandbox
TList* GetQueryResults()
 Return pointer to the list of query results in the player
TQueryResult* GetQueryResult(const char *ref)
 Return pointer to the full TQueryResult instance owned by the player
 and referenced by 'ref'
void ShowQueries(Option_t *opt)
 Ask the master for the list of queries.
 Options:
           "A"     show information about all the queries known to the
                   server, i.e. even those processed by other sessions
           "L"     show only information about queries locally available
                   i.e. already retrieved. If "L" is specified, "A" is
                   ignored.
           "F"     show all details available about queries
           "H"     print help menu
 Default ""
Bool_t IsDataReady(Long64_t &totalbytes, Long64_t &bytesready)
 See if the data is ready to be analyzed.
void Interrupt(EUrgent type, ESlaves list)
 Send interrupt OOB byte to master or slave servers.
Int_t GetParallel() const
 Returns number of slaves active in parallel mode. Returns 0 in case
 there are no active slaves. Returns -1 in case of error.
TList* GetSlaveInfo()
 Returns number of slaves active in parallel mode. Returns 0 in case
 there are no active slaves. Returns -1 in case of error.
void Activate(TList *slaves)
 Activate slave server list.
Int_t Broadcast(const TMessage &mess, TList *slaves)
 Broadcast a message to all slaves in the specified list. Returns
 the number of slaves the message was successfully sent to.
 Returns -1 in case of error.
Int_t Broadcast(const TMessage &mess, ESlaves list)
 Broadcast a message to all slaves in the specified list (either
 all slaves or only the active slaves). Returns the number of slaves
 the message was successfully sent to. Returns -1 in case of error.
Int_t Broadcast(const char *str, Int_t kind, TList *slaves)
 Broadcast a character string buffer to all slaves in the specified
 list. Use kind to set the TMessage what field. Returns the number of
 slaves the message was sent to. Returns -1 in case of error.
Int_t Broadcast(const char *str, Int_t kind, ESlaves list)
 Broadcast a character string buffer to all slaves in the specified
 list (either all slaves or only the active slaves). Use kind to
 set the TMessage what field. Returns the number of slaves the message
 was sent to. Returns -1 in case of error.
Int_t BroadcastObject(const TObject *obj, Int_t kind, TList *slaves)
 Broadcast an object to all slaves in the specified list. Use kind to
 set the TMEssage what field. Returns the number of slaves the message
 was sent to. Returns -1 in case of error.
Int_t BroadcastObject(const TObject *obj, Int_t kind, ESlaves list)
 Broadcast an object to all slaves in the specified list. Use kind to
 set the TMEssage what field. Returns the number of slaves the message
 was sent to. Returns -1 in case of error.
Int_t BroadcastRaw(const void *buffer, Int_t length, TList *slaves)
 Broadcast a raw buffer of specified length to all slaves in the
 specified list. Returns the number of slaves the buffer was sent to.
 Returns -1 in case of error.
Int_t BroadcastRaw(const void *buffer, Int_t length, ESlaves list)
 Broadcast a raw buffer of specified length to all slaves in the
 specified list. Returns the number of slaves the buffer was sent to.
 Returns -1 in case of error.
Int_t Collect(const TSlave *sl)
 Collect responses from slave sl. Returns the number of slaves that
 responded (=1).
Int_t Collect(TList *slaves)
 Collect responses from the slave servers. Returns the number of slaves
 that responded.
Int_t Collect(ESlaves list)
 Collect responses from the slave servers. Returns the number of slaves
 that responded.
Int_t Collect(TMonitor *mon)
 Collect responses from the slave servers. Returns the number of messages
 received. Can be 0 if there are no active slaves.
void CleanGDirectory(TList *ol)
 Remove links to objects in list 'ol' from gDirectory
Int_t CollectInputFrom(TSocket *s)
 Collect and analyze available input from socket s.
 Returns 0 on success, -1 if any failure occurs.
void ActivateAsyncInput()
 Activate the a-sync input handler.
void DeActivateAsyncInput()
 De-actiate a-sync input handler.
void HandleAsyncInput(TSocket *sl)
 Handle input coming from the master server (when this is a client)
 or from a slave server (when this is a master server). This is mainly
 for a-synchronous communication. Normally when PROOF issues a command
 the (slave) server messages are directly handle by Collect().
void MarkBad(TSlave *sl)
 Add a bad slave server to the bad slave list and remove it from
 the active list and from the two monitor objects.
void MarkBad(TSocket *s)
 Add slave with socket s to the bad slave list and remove if from
 the active list and from the two monitor objects.
Int_t Ping()
 Ping PROOF. Returns 1 if master server responded.
Int_t Ping(ESlaves list)
 Ping PROOF slaves. Returns the number of slaves that responded.
void Print(Option_t *option) const
 Print status of PROOF cluster.
Int_t Process(TDSet *dset, const char *selector, Option_t *option,
                      Long64_t nentries, Long64_t first, TEventList *evl)
 Process a data set (TDSet) using the specified selector (.C) file.
 Returns -1 in case of error, 0 otherwise.
Int_t GetQueryReference(Int_t qry, TString &ref)
 Get reference for the qry-th query in fQueries (as
 displayed by ShowQueries).
Int_t Finalize(Int_t qry, Bool_t force)
 Finalize the qry-th query in fQueries.
 If force, force new retrieve if the query is found in the local list
 but has already been finalized (default kFALSE).
 If query < 0, finalize current query.
 Return 0 on success, -1 on error
Int_t Finalize(const char *ref, Bool_t force)
 Finalize query with reference ref.
 If force, force new retrieve if the query is found in the local list
 but has already been finalized (default kFALSE).
 If ref = 0, finalize current query.
 Return 0 on success, -1 on error
Int_t Retrieve(Int_t qry, const char *path)
 Send retrieve request for the qry-th query in fQueries.
 If path is defined save it to path.
Int_t Retrieve(const char *ref, const char *path)
 Send retrieve request for the query specified by ref.
 If path is defined save it to path.
 Generic method working for all queries known by the server.
Int_t Remove(Int_t qry)
 Send remove request for the qry-th query in fQueries.
Int_t Remove(const char *ref, Bool_t all)
 Send remove request for the query specified by ref.
 If all = TRUE remove also local copies of the query, if any.
 Generic method working for all queries known by the server.
Int_t Archive(Int_t qry, const char *path)
 Send archive request for the qry-th query in fQueries.
Int_t Archive(const char *ref, const char *path)
 Send archive request for the query specified by ref.
 Generic method working for all queries known by the server.
 If ref == "Default", path is understood as a default path for
 archiving.
Int_t CleanupSession(const char *sessiontag)
 Send cleanup request for the session specified by tag.
void SetQueryMode(EQueryMode mode)
 Change query running mode to the one specified by 'mode'.
Int_t DrawSelect(TDSet *dset, const char *varexp, const char *selection, Option_t *option,
                         Long64_t nentries, Long64_t first)
 Process a data set (TDSet) using the specified selector (.C) file.
 Returns -1 in case of error, 0 otherwise.
void StopProcess(Bool_t abort)
 Send STOPPROCESS message to master and workers.
void AddInput(TObject *obj)
 Add objects that might be needed during the processing of
 the selector (see Process()).
void ClearInput()
 Clear input object list.
TObject* GetOutput(const char *name)
 Get specified object that has been produced during the processing
 (see Process()).
TList* GetOutputList()
 Get list with all object created during processing (see Process()).
void RecvLogFile(TSocket *s, Int_t size)
 Receive the log file of the slave with socket s.
void LogMessage(const char *msg, Bool_t all)
 Log a message into the appropriate window by emitting a signal.
Int_t SendGroupView()
 Send to all active slaves servers the current slave group size
 and their unique id. Returns number of active slaves.
 Returns -1 in case of error.
Int_t Exec(const char *cmd)
 Send command to be executed on the PROOF master and/or slaves.
 Command can be any legal command line command. Commands like
 ".x file.C" or ".L file.C" will cause the file file.C to be send
 to the PROOF cluster. Returns -1 in case of error, >=0 in case of
 succes.
Int_t Exec(const char *cmd, ESlaves list)
 Send command to be executed on the PROOF master and/or slaves.
 Command can be any legal command line command. Commands like
 ".x file.C" or ".L file.C" will cause the file file.C to be send
 to the PROOF cluster. Returns -1 in case of error, >=0 in case of
 succes.
Int_t SendCommand(const char *cmd, ESlaves list)
 Send command to be executed on the PROOF master and/or slaves.
 Command can be any legal command line command, however commands
 like ".x file.C" or ".L file.C" will not cause the file.C to be
 transfered to the PROOF cluster. In that case use TProof::Exec().
 Returns the status send by the remote server as part of the
 kPROOF_LOGDONE message. Typically this is the return code of the
 command on the remote side. Returns -1 in case of error.
Int_t SendCurrentState(ESlaves list)
 Transfer the current state of the master to the active slave servers.
 The current state includes: the current working directory, etc.
 Returns the number of active slaves. Returns -1 in case of error.
Int_t SendInitialState()
 Transfer the initial (i.e. current) state of the master to all
 slave servers. Currently the initial state includes: log level.
 Returns the number of active slaves. Returns -1 in case of error.
Bool_t CheckFile(const char *file, TSlave *slave, Long_t modtime)
 Check if a file needs to be send to the slave. Use the following
 algorithm:
   - check if file appears in file map
     - if yes, get file's modtime and check against time in map,
       if modtime not same get md5 and compare against md5 in map,
       if not same return kTRUE.
     - if no, get file's md5 and modtime and store in file map, ask
       slave if file exists with specific md5, if yes return kFALSE,
       if no return kTRUE.
 Returns kTRUE in case file needs to be send, returns kFALSE in case
 file is already on remote node.
Int_t SendFile(const char *file, Int_t opt, const char *rfile, TSlave *wrk)
 Send a file to master or slave servers. Returns number of slaves
 the file was sent to, maybe 0 in case master and slaves have the same
 file system image, -1 in case of error.
 If defined, send to worker 'wrk' only.
 If defined, the full path of the remote path will be rfile.
 The mask 'opt' is an or of ESendFileOpt:
       kAscii  (0x0)      if set true ascii file transfer is used
       kBinary (0x1)      if set true binary file transfer is used
       kForce  (0x2)      if not set an attempt is done to find out
                          whether the file really needs to be downloaded
                          (a valid copy may already exist in the cache
                          from a previous run); the bit is set by
                          UploadPackage, since the check is done elsewhere.
       kForward (0x4)     if set, ask server to forward the file to slave
                          or submaster (meaningless for slave servers).
Int_t SendObject(const TObject *obj, ESlaves list)
 Send object to master or slave servers. Returns number of slaves object
 was sent to, -1 in case of error.
Int_t SendPrint(Option_t *option)
 Send print command to master server. Returns number of slaves message
 was sent to. Returns -1 in case of error.
void SetLogLevel(Int_t level, UInt_t mask)
 Set server logging level.
Int_t SetParallel(Int_t nodes)
 Tell RPOOF how many slaves to use in parallel. Returns the number of
 parallel slaves. Returns -1 in case of error.
Int_t GoParallel(Int_t nodes, Bool_t attach)
 Go in parallel mode with at most "nodes" slaves. Since the fSlaves
 list is sorted by slave performace the active list will contain first
 the most performant nodes. Returns the number of active slaves.
 Returns -1 in case of error.
void ShowCache(Bool_t all)
 List contents of file cache. If all is true show all caches also on
 slaves. If everything is ok all caches are to be the same.
void ClearCache()
 Remove files from all file caches.
void ShowPackages(Bool_t all)
 List contents of package directory. If all is true show all package
 directries also on slaves. If everything is ok all package directories
 should be the same.
void ShowEnabledPackages(Bool_t all)
 List which packages are enabled. If all is true show enabled packages
 for all active slaves. If everything is ok all active slaves should
 have the same packages enabled.
Int_t ClearPackages()
 Remove all packages.
Int_t ClearPackage(const char *package)
 Remove a specific package.
Int_t DisablePackage(const char *package)
 Remove a specific package.
Int_t DisablePackages()
 Remove all packages.
Int_t BuildPackage(const char *package)
 Build specified package. Executes the PROOF-INF/BUILD.sh
 script if it exists on all unique nodes.
 Returns 0 in case of success and -1 in case of error.
Int_t LoadPackage(const char *package)
 Load specified package. Executes the PROOF-INF/SETUP.C script
 on all active nodes.
 Returns 0 in case of success and -1 in case of error.
Int_t UnloadPackage(const char *package)
 Unload specified package.
 Returns 0 in case of success and -1 in case of error.
Int_t UnloadPackages()
 Unload all packages.
 Returns 0 in case of success and -1 in case of error.
Int_t EnablePackage(const char *package)
 Enable specified package. Executes the PROOF-INF/BUILD.sh
 script if it exists followed by the PROOF-INF/SETUP.C script.
 Returns 0 in case of success and -1 in case of error.
Int_t UploadPackage(const char *tpar)
 Upload a PROOF archive (PAR file). A PAR file is a compressed
 tar file with one special additional directory, PROOF-INF
 (blatantly copied from Java's jar format). It must have the extension
 .par. A PAR file can be directly a binary or a source with a build
 procedure. In the PROOF-INF directory there can be a build script:
 BUILD.sh to be called to build the package, in case of a binary PAR
 file don't specify a build script or make it a no-op. Then there is
 SETUP.C which sets the right environment variables to use the package,
 like LD_LIBRARY_PATH, etc.
 Returns 0 in case of success and -1 in case of error.
void Progress(Long64_t total, Long64_t processed)
 Get query progress information. Connect a slot to this signal
 to track progress.
void Feedback(TList *objs)
 Get list of feedback objects. Connect a slot to this signal
 to monitor the feedback object.
void ResetProgressDialog(const char *sel, Int_t sz, Long64_t fst,
                                 Long64_t ent)
 Reset progress dialog.
void StartupMessage(const char *msg, Bool_t st, Int_t done,
                                 Int_t total)
 Send startup message.
void QueryResultReady(const char *ref)
 Notify availability of a query result.
void ValidateDSet(TDSet *dset)
 Validate a TDSet.
void AddFeedback(const char *name)
 Add object to feedback list.
void RemoveFeedback(const char *name)
 Remove object from feedback list.
void ClearFeedback()
 Clear feedback list.
void ShowFeedback() const
 Show items in feedback list.
TList* GetFeedbackList() const
 Return feedback list.
TTree* GetTreeHeader(TDSet *dset)
 Creates a tree header (a tree with nonexisting files) object for
 the DataSet.
TDrawFeedback* CreateDrawFeedback()
 Draw feedback creation proxy. When accessed via TVirtualProof avoids
 link dependency on libProof.
void SetDrawFeedbackOption(TDrawFeedback *f, Option_t *opt)
 Set draw feedback option.
void DeleteDrawFeedback(TDrawFeedback *f)
 Delete draw feedback object.
TList* GetOutputNames()
   FIXME: to be written
void Browse(TBrowser *b)
 Build the PROOF's structure in the browser.
TProofPlayer* MakePlayer()
 Construct a TProofPlayer object.
void AddChain(TChain *chain)
 Add chain to data set
void RemoveChain(TChain *chain)
 Remove chain from data set
void* SlaveStartupThread(void *arg)
 Function executed in the slave startup thread.
void GetLog(Int_t start, Int_t end)
 Ask for remote logs in the range [start, end]. If start == -1 all the
 messages not yet received are sent back.
void PutLog(TQueryResult *pq)
 Display log of query pq into the log window frame
void ShowLog(const char *queryref)
 Display on screen the content of the temporary log file for query
 in reference
void ShowLog(Int_t qry)
 Display on screen the content of the temporary log file.
 If qry == -2 show messages from the last (current) query.
 If qry == -1 all the messages not yet displayed are shown (default).
 If qry == 0, all the messages in the file are shown.
 If qry  > 0, only the messages related to query 'qry' are shown.
 For qry != -1 the original file offset is restored at the end
void cd(Int_t id)
 Set session with 'id' the default one. If 'id' is not found in the list,
 the current session is set as default
void Detach(Option_t *opt)
 Detach this instance to its proofserv.
 If opt is 'S' or 's' the remote server is shutdown
void SetAlias(const char *alias)
 Set an alias for this session. If reconnection is supported, the alias
 will be communicated to the remote coordinator so that it can be recovered
 when reconnecting
Inline Functions
                             void operator=(const TProof&)
                            Int_t Broadcast(Int_t kind, TList* slaves)
                            Int_t Broadcast(Int_t kind, TProof::ESlaves list = kActive)
                           TList* GetListOfSlaves() const
                           TList* GetListOfUniqueSlaves() const
                           TList* GetListOfBadSlaves() const
                           Bool_t IsSync() const
                             void SetPlayer(TProofPlayer* player)
                    TProofPlayer* GetPlayer() const
                           TList* GetListOfActiveSlaves() const
                             void SetDSet(TDSet* dset)
                  TPluginHandler* GetProgressDialog() const
                           TProof TProof(const char* masterurl, const char* conffile = "kPROOF_ConfFile", const char* confdir = "kPROOF_ConfDir", Int_t loglevel = 0, const char* alias = "0")
                      const char* GetMaster() const
                      const char* GetConfDir() const
                      const char* GetConfFile() const
                      const char* GetUser() const
                      const char* GetWorkDir() const
                      const char* GetImage() const
                      const char* GetUrl() const
                            Int_t GetPort() const
                            Int_t GetRemoteProtocol() const
                            Int_t GetClientProtocol() const
                            Int_t GetStatus() const
                            Int_t GetLogLevel() const
                            Int_t GetSessionID() const
        TVirtualProof::EQueryMode GetQueryMode() const
        TVirtualProof::EQueryMode GetQueryMode(Option_t* mode) const
                         Long64_t GetBytesRead() const
                          Float_t GetRealTime() const
                          Float_t GetCpuTime() const
                           Bool_t IsFolder() const
                           Bool_t IsMaster() const
                           Bool_t IsValid() const
                           Bool_t IsParallel() const
                           Bool_t IsIdle() const
                            Int_t GetNumberOfDrawQueries()
                             void SetActive(Bool_t = kTRUE)
                           Bool_t SendingLogToWindow() const
                             void SendLogToWindow(Bool_t mode)
                             void ResetProgressDialogStatus()
                          TClass* Class()
                          TClass* IsA() const
                             void ShowMembers(TMemberInspector& insp, char* parent)
                             void Streamer(TBuffer& b)
                             void StreamerNVirtual(TBuffer& b)
Author: Fons Rademakers 13/02/97
Last update: root/proof:$Name:  $:$Id: TProof.cxx,v 1.130 2005/12/12 16:42:14 rdm Exp $
Copyright  (C) 1995-2000, Rene Brun and Fons Rademakers.               *
ROOT page - Class index - Class Hierarchy - Top of the page
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.