12 #ifndef ROOT_TProofPlayer
13 #define ROOT_TProofPlayer
138 const char *selector,
Option_t *option =
"",
148 const char *selection,
Option_t *option =
"",
183 {
Progress(total, processed, bytesread, initTime, procTime,
251 const char *selector,
Option_t *option =
"",
300 Long64_t first,
const char *defpackunit,
301 const char *defpackdata);
330 const char *selection,
Option_t *option =
"",
352 {
Progress(total, processed, bytesread, initTime, procTime,
434 initTime, procTime, evtrti, mbrti); }
virtual void SetMerging(Bool_t=kTRUE)
Long64_t Process(const char *selector, Long64_t nentries=-1, Option_t *option="")
Process the specified TSelector file 'nentries' times.
TCleanup(TProofPlayer *p)
void SetMerging(Bool_t on=kTRUE)
Switch on/off merge timer.
TProofProgressStatus * fProgressStatus
TProofPlayerSuperMaster(TProof *proof=0)
virtual ~TProofPlayerSuperMaster()
Internal class steering processing in PROOF.
EExitStatus fExitStatus
status of query in progress
Int_t AssertSelector(const char *selector_file)
Make sure that a valid selector object Return -1 in case of problems, 0 otherwise.
void StoreOutput(TList *out)
Store output list (may not be used in this class).
Int_t GetLearnEntries()
Return the number of entries in the learning phase.
virtual ~TProofPlayerLocal()
Long64_t GetEventsProcessed() const
Long_t fFeedbackPeriod
timer for sending intermediate results
TList * GetInputList() const
TQueryResult * GetQueryResult(const char *ref)
Get query result instances referenced 'ref' from the list of results.
virtual Bool_t JoinProcess(TList *workers)
Not implemented: meaningful only in the remote player. Returns kFALSE.
Bool_t CheckMemUsage(Long64_t &mfreq, Bool_t &w80r, Bool_t &w80v, TString &wmsg)
Check the memory usage, if requested.
This class implements a data set to be used for PROOF processing.
virtual Long64_t Finalize(Bool_t force=kFALSE, Bool_t sync=kFALSE)
Finalize query (may not be used in this class).
Bool_t fSaveResultsPerPacket
TProofPlayer(TProof *proof=0)
Default ctor.
void StopProcess(Bool_t abort, Int_t timeout=-1)
Stop process after this event.
TQueryResult * fPreviousQuery
void AddOutput(TList *out)
Incorporate output list (may not be used in this class).
A ROOT file is a suite of consecutive data records (TKey instances) with a well defined format...
TString fSelectorFileName
void SetupFeedback()
Setup reporting of feedback objects.
virtual void MergeOutput(Bool_t savememvalues=kFALSE)
Merge objects in output the lists.
void RemoveQueryResult(const char *ref)
Remove all query result instances referenced 'ref' from the list of results.
Bool_t HandleTimer(TTimer *timer)
Send progress and feedback to client.
TDSetElement * GetNextPacket(TSlave *slave, TMessage *r)
Get next packet for specified slave.
void Progress(TSlave *, TProofProgressInfo *pi)
Array of floats (32 bits per element).
Bool_t HistoSameAxis(TH1 *h0, TH1 *h1)
Return kTRUE is the histograms 'h0' and 'h1' have the same binning and ranges on the axis (i...
void SetDispatchTimer(Bool_t on=kTRUE)
Enable/disable the timer to dispatch pening events while processing.
void SetupFeedback()
Setup feedback.
Array of integers (32 bits per element).
void MapOutputListToDataMembers() const
TProof * GetProof() const
Int_t SavePartialResults(Bool_t queryend=kFALSE, Bool_t force=kFALSE)
Save the partial results of this query to a dedicated file under the user data directory.
TMessage * fProcessMessage
Histogram with packets being processed (owned by TPerfStats)
void SetStopTimer(Bool_t on=kTRUE, Bool_t abort=kFALSE, Int_t timeout=0)
Enable/disable the timer to stop/abort processing.
Manages an element of a TDSet.
TProofPlayerSlave(TSocket *socket=0)
void Progress(TSlave *, Long64_t total, Long64_t processed)
#define ClassDef(name, id)
void AddEventsProcessed(Long64_t ev)
THashList implements a hybrid collection class consisting of a hash table and a list to store TObject...
TEventIter * fEvIter
period (ms) for sending intermediate results
This class holds the status of an ongoing operation and collects error messages.
void IncEntries(Long64_t entries=1)
void StopFeedback()
Stop reporting of feedback objects.
void AddQueryResult(TQueryResult *q)
Add query result to the list, making sure that there are no duplicates.
void DeleteDrawFeedback(TDrawFeedback *f)
Delete draw feedback object.
void Progress(TSlave *, Long64_t total, Long64_t processed)
void SetDrawFeedbackOption(TDrawFeedback *f, Option_t *opt)
Set draw feedback option.
TList * MergeFeedback()
Merge feedback lists.
Long64_t fProcessedRun
Read calls in this run.
virtual Long64_t Process(TDSet *set, const char *selector, Option_t *option="", Long64_t nentries=-1, Long64_t firstentry=0)
Process specified TDSet on PROOF.
TProofProgressStatus * GetProgressStatus() const
virtual void SetupFeedback()
Set up feedback (may not be used in this class).
TClass * fSelectorClass
kTRUE when fSelector has been created locally
TList * GetOutputList() const
Get output list.
void Progress(TSlave *, Long64_t total, Long64_t processed, Long64_t bytesread, Float_t initTime, Float_t procTime, Float_t evtrti, Float_t mbrti)
void SetCurrentQuery(TQueryResult *q)
Set current query and save previous value.
void SetupFeedback()
Set up feedback (may not be used in this class).
A container class for query results.
void SetInitTime()
Set init time.
TTimer * fFeedbackTimer
class of the latest selector
void SetOutputFilePath(const char *fp)
void Feedback(TList *objs)
Feedback signal.
TProofPlayerLocal(Bool_t client=kTRUE)
void ClearInput()
Clear input list.
void UpdateAutoBin(const char *name, Double_t &xmin, Double_t &xmax, Double_t &ymin, Double_t &ymax, Double_t &zmin, Double_t &zmax)
Update automatic binning parameters for given object "name".
void HandleGetTreeHeader(TMessage *mess)
Handle tree header request.
void Progress(TProofProgressInfo *pi)
Progress signal.
TDSetElement * GetNextPacket(TSlave *slave, TMessage *r)
Get next packet (may not be used in this class).
Long64_t Process(TDSet *set, const char *selector, Option_t *option="", Long64_t nentries=-1, Long64_t firstentry=0)
Process specified TDSet on PROOF worker.
Long64_t fReadCallsRun
Bytes read in this run.
void AddInput(TObject *inp)
Add object to input list.
virtual void StopFeedback()
Stop feedback (may not be used in this class).
void SetupFeedback()
Setup reporting of feedback objects and progress messages.
void AddOutput(TList *out)
Incorporate the content of the received output list 'out' into the final output list fOutput...
TList * GetListOfResults() const
TVirtualPacketizer * GetPacketizer() const
virtual Bool_t JoinProcess(TList *workers)
Prepares the given list of new workers to join a progressing process.
Long64_t Process(TDSet *set, const char *selector, Option_t *option="", Long64_t nentries=-1, Long64_t firstentry=0)
Process specified TDSet on PROOF worker.
virtual void SetInitTime()
Special iterator class used in TProofPlayer to iterate over events or objects in the packets...
Handles synchronous and a-synchronous timer events.
TArrayL64 fSlaveBytesRead
void SetLastMergingMsg(TObject *obj)
Set the message to be notified in case of exception.
The ROOT global object gROOT contains a list of all defined classes.
virtual Bool_t HandleTimer(TTimer *timer)
Send feedback objects to client.
Int_t ReinitSelector(TQueryResult *qr)
Reinitialize fSelector using the selector files in the query result.
Long64_t Process(TDSet *set, const char *selector, Option_t *option="", Long64_t nentries=-1, Long64_t firstentry=0)
Process specified TDSet on PROOF.
void HandleRecvHisto(TMessage *mess)
Receive histo from slave.
Long64_t GetEntries() const
TList * fQueryResults
Events processed in this run.
Long64_t Finalize(Bool_t force=kFALSE, Bool_t sync=kFALSE)
Finalize query (may not be used in this class).
TStatus * fSelStatus
iterator on events or objects
void FeedBackCanvas(const char *name, Bool_t create)
Create/destroy a named canvas for feedback.
void Progress(TSlave *, Long64_t total, Long64_t processed, Long64_t bytesread, Float_t initTime, Float_t procTime, Float_t evtrti, Float_t mbrti)
Int_t AddOutputObject(TObject *obj)
Incorporate the received object 'obj' into the output list fOutput.
void UpdateProgressInfo()
Update fProgressStatus.
static unsigned int total
void SetMaxDrawQueries(Int_t max)
The packetizer is a load balancing object created for each query.
Bool_t IsClient() const
Is the player running on the client?
void(* ErrorHandlerFunc_t)(int level, Bool_t abort, const char *location, const char *msg)
virtual void MergeOutput(Bool_t savememvalues=kFALSE)
Merge output (may not be used in this class).
Long64_t Process(TDSet *set, TSelector *selector, Option_t *option="", Long64_t nentries=-1, Long64_t firstentry=0)
Process specified TDSet on PROOF worker with TSelector object The return value is -1 in case of error...
void RestorePreviousQuery()
void StopFeedback()
Stop feedback (may not be used in this class).
void RedirectOutput(Bool_t on=kTRUE)
Control output redirection to TProof::fLogFileW.
void HandleGetTreeHeader(TMessage *mess)
Handle tree header request.
This class controls a Parallel ROOT Facility, PROOF, cluster.
EExitStatus GetExitStatus() const
static THashList * fgDrawInputPars
ErrorHandlerFunc_t fErrorHandler
tdset for current processing
Bool_t MergeOutputFiles()
Merge output in files.
Long64_t DrawSelect(TDSet *set, const char *varexp, const char *selection, Option_t *option="", Long64_t nentries=-1, Long64_t firstentry=0)
Draw (may not be used in this class).
Int_t InitPacketizer(TDSet *dset, Long64_t nentries, Long64_t first, const char *defpackunit, const char *defpackdata)
Init the packetizer Return 0 on success (fPacketizer is correctly initialized), -1 on failure...
void SetSelectorDataMembersFromOutputList()
Set the selector's data members: find the mapping of data members to otuput list entries in the outpu...
virtual Bool_t SendSelector(const char *selector_file)
Send the selector file(s) to master or worker nodes.
Bool_t HandleTimer(TTimer *timer)
Handle timer event.
virtual Int_t DrawCanvas(TObject *obj)
Draw the object if it is a canvas.
Mother of all ROOT objects.
virtual ~TProofPlayerRemote()
Destructor.
void StopFeedback()
Stop feedback.
TObject * HandleHistogram(TObject *obj, Bool_t &merged)
Low statistic histograms need a special treatment when using autobin.
void Progress(Long64_t total, Long64_t processed)
Report progress (may not be used in this class).
Int_t AddOutputObject(TObject *obj)
Incorporate output object (may not be used in this class).
Int_t Incorporate(TObject *obj, TList *out, Bool_t &merged)
Incorporate object 'newobj' in the list 'outlist'.
Utility class to draw objects in the feedback list during queries.
void Progress(Long64_t total, Long64_t processed)
Progress signal.
Array of long64s (64 bits per element).
void StopProcess(Bool_t abort, Int_t timeout=-1)
Stop the process after this event.
TVirtualPacketizer * fPacketizer
Int_t GetDrawArgs(const char *var, const char *sel, Option_t *opt, TString &selector, TString &objname)
Parse the arguments from var, sel and opt and fill the selector and object name accordingly.
virtual void StoreFeedback(TObject *slave, TList *out)
Store feedback results from the specified slave.
TObject * GetOutput(const char *name) const
Get output object by name.
Long64_t Process(TDSet *set, TSelector *selector, Option_t *option="", Long64_t nentries=-1, Long64_t firstentry=0)
Process specified TDSet on PROOF.
TVirtualPacketizer * GetPacketizer() const
void StoreFeedback(TObject *slave, TList *out)
Store feedback list (may not be used in this class).
Long64_t GetCacheSize()
Return the size in bytes of the cache.
TQueryResult * GetCurrentQuery() const
Bool_t fCreateSelObj
the latest selector
Abstract interface for the PROOF player.
Class describing a PROOF worker server.
Container class for processing statistics.
A TSelector object is used by the TTree::Draw, TTree::Scan, TTree::Process to navigate in a TTree and...
void Progress(TSlave *, TProofProgressInfo *pi)
TProofPlayerRemote(TProof *proof=0)
Long64_t DrawSelect(TDSet *set, const char *varexp, const char *selection, Option_t *option="", Long64_t nentries=-1, Long64_t firstentry=0)
Draw (support for TChain::Draw()).
void NotifyMemory(TObject *obj)
Printout the memory record after merging object 'obj' This record is used by the memory monitor...
void StoreOutput(TList *out)
Store received output list.
void SetProcessing(Bool_t on=kTRUE)
Set processing bit according to 'on'.
void Progress(Long64_t total, Long64_t processed)
Progress signal.
virtual ~TProofPlayer()
Destructor.
void Progress(Long64_t total, Long64_t processed, Long64_t bytesread, Float_t initTime, Float_t procTime, Float_t evtrti, Float_t mbrti)
Progress signal.
void Feedback(TList *objs)
Set feedback list (may not be used in this class).
void SetExitStatus(EExitStatus st)
TDrawFeedback * CreateDrawFeedback(TProof *p)
Draw feedback creation proxy.
Bool_t fSavePartialResults