38 : fSeqNum(seqnum), fStatus(kSubmitted), fUsedCPU(0.), fOptions(opt),
39 fEntries(entries),
fFirst(first),
40 fBytes(0), fParList("-"), fOutputList(0),
41 fFinalized(
kFALSE), fArchived(kFALSE), fResultFile("-"),
42 fPrepTime(0.), fInitTime(0.), fProcTime(0.), fMergeTime(0.),
43 fRecvTime(-1), fTermTime(-1), fNumWrks(-1), fNumMergers(-1)
52 fEnd.Set(fStart.Convert()-1);
57 fInputList = (
TList *) (inlist->Clone());
58 fInputList->SetOwner();
62 fLogFile =
new TMacro(
"LogFile");
71 TIter nxo(fInputList);
74 if (!strcmp(o->
GetName(),
"varexp")) {
79 varsel.
Form(
"\"%s\";", varsel.
Data());
81 if (!strcmp(o->
GetName(),
"selection"))
85 Info(
"TQueryResult",
"selec: %s, varsel: %s", selec, varsel.
Data());
87 fLogFile->AddLine(
TString::Format(
"TQueryResult: selec: %s, varsel: %s",
88 selec, varsel.
Data()));
91 fSelecImp =
new TMacro(selec, varsel);
102 fLibList = (pl && (strlen(pl) > 0)) ? pl :
"-";
187 if (aclicMode.
Length() > 0)
198 Info(
"SaveSelector",
"precompiled selector: just save the name");
211 "could not locate selector implementation file (%s)", selec.
Data());
220 char *p = (
char *) strrchr(selc,
'.');
222 strlcpy(p+1,
"h",strlen(p));
226 "bad formatted name (%s): could not build header file name", selc);
235 "could not locate selector header file (%s)", selc);
261 Info(
"RecordEnd",
"output list cloned successfully!");
263 Warning(
"RecordEnd",
"unable to clone output list!!!");
306 if (archfile && (strlen(archfile) > 0))
317 const char *qst[] = {
318 "aborted ",
"submitted",
"running ",
"stopped ",
"completed" 345 if (!full && (last > -1))
350 const char *fin =
fFinalized ?
"finalized" : qst[st];
351 const char *arc =
fArchived ?
"(A)" :
"";
352 Printf(
"+++ #:%d ref:\"%s:%s\" sel:%s %9s%s %s",
356 Printf(
"+++ #:%d ref:\"%s:%s\" varsel:%s %s",
371 Printf(
"+++ process: %.3f sec (CPU time: %.1f sec)", elapsed,
fUsedCPU);
387 Printf(
"+++ processed: %lld events (size: %.3f MBs)",
fEntries, size);
388 Printf(
"+++ rate: %.1f evts/sec", rate);
402 res.
Insert(0,
"<PROOF_SandBox>/");
405 res = (fStatus ==
kAborted) ?
"not available" :
"sent to client";
467 while ((o = nxoo())) {
521 if (!strncmp(o->
ClassName(), classname, strlen(classname)))
void Add(TObject *obj, const char *name=0, Int_t check=-1)
Add object with name to browser.
virtual const char * BaseName(const char *pathname)
Base name of a file name. Base name of /user/root is root.
virtual const char * GetName() const
Returns name of object.
virtual Bool_t AccessPathName(const char *path, EAccessMode mode=kFileExists)
Returns FALSE if one can access a file using the specified access mode.
void Browse(TBrowser *b=0)
To support browsing of the results.
virtual int GetPid()
Get process id.
virtual void Delete(Option_t *option="")
Remove all objects from the list AND delete all heap based objects.
Float_t fRecvTime
Transfer-to-client time (seconds) (millisec precision)
virtual void Info(const char *method, const char *msgfmt,...) const
Issue info message.
void SaveSelector(const char *selec)
Save the selector header and implementation into the dedicated TMacro instances.
void Set()
Set Date/Time to current time as reported by the system.
void Print(Option_t *opt="") const
Print query content. Use opt = "F" for a full listing.
Float_t fUsedCPU
real CPU time used (seconds)
virtual TString SplitAclicMode(const char *filename, TString &mode, TString &args, TString &io) const
This method split a filename of the form: ~~~ {.cpp} [path/]macro.C[+|++[k|f|g|O|c|s|d|v|-]][(args)]...
EQueryStatus fStatus
query status
virtual void SetName(const char *name)
Set the name of the TNamed.
virtual void SetOwner(Bool_t enable=kTRUE)
Set whether this collection is the owner (enable==true) of its content.
TObject * GetInputObject(const char *classname) const
Return first instance of class 'classname' in the input list.
Regular expression class.
void AddLogLine(const char *logline)
Fill log file.
Ssiz_t Index(const char *pat, Ssiz_t i=0, ECaseCompare cmp=kExact) const
Class supporting a collection of lines with C++ code.
TQueryResult * CloneInfo()
Return an instance of TQueryResult containing only the local info fields, i.e.
virtual char * Which(const char *search, const char *file, EAccessMode mode=kFileExists)
Find location of file in a search path.
Float_t fTermTime
Terminate time (seconds) (millisec precision)
virtual Bool_t IsDone() const
TDatime fEnd
time when processing ended
virtual TObject * Clone(const char *newname="") const
Make a clone of an collection using the Streamer facility.
TString & Insert(Ssiz_t pos, const char *s)
Int_t fNumMergers
Number of submergers.
TMacro * fSelecHdr
selector header file
LongDouble_t Power(LongDouble_t x, LongDouble_t y)
virtual TObject * FindObject(const char *name) const
Find an object in this list using its name.
Bool_t fFinalized
whether Terminate has been run
static const char * GetMacroPath()
Get macro search path. Static utility function.
TMacro * fLogFile
file with log messages from the query
virtual const char * ClassName() const
Returns name of class to which the object belongs.
TString fResultFile
URL of the file where results have been archived.
TDatime fStart
time when processing started
static TString Format(const char *fmt,...)
Static method which formats a string using a printf style format descriptor and return a TString...
TMacro * GetSelecHdr() const
Long64_t fFirst
first entry processed
void Info(const char *location, const char *msgfmt,...)
TMacro * fSelecImp
selector implementation file
virtual void SetOutputList(TList *out, Bool_t adopt=kTRUE)
Set / change the output list.
A container class for query results.
virtual void SetProcessInfo(Long64_t ent, Float_t cpu=0., Long64_t siz=-1, Float_t inittime=0., Float_t proctime=0.)
Set processing info.
TList * fOutputList
output list
void AddInput(TObject *obj)
Add obj to the input list.
Using a TBrowser one can browse all ROOT objects.
Bool_t fArchived
whether the query has been archived
R__EXTERN TSystem * gSystem
virtual const char * GetLibraries(const char *regexp="", const char *option="", Bool_t isRegexp=kTRUE)
Return a space separated list of loaded shared libraries.
TList * fInputList
input list; contains also data sets, entry list, ...
static Bool_t IsStandardDraw(const char *selec)
Find out if this is a standard selection used for Draw actions (either TSelectorDraw, TProofDraw or deriving from them).
virtual TObject * Remove(TObject *obj)
Remove object from the list.
Bool_t BeginsWith(const char *s, ECaseCompare cmp=kExact) const
void Form(const char *fmt,...)
Formats a string using a printf style format descriptor.
virtual void RecordEnd(EQueryStatus status, TList *outlist=0)
End of query settings.
Int_t fNumWrks
Number of workers at start.
virtual Int_t ReadFile(const char *filename)
Read lines in filename in this macro.
Int_t fSeqNum
query unique sequential number
Bool_t Matches(const char *ref)
Return TRUE if reference ref matches.
Float_t fPrepTime
Prepare time (seconds) (millisec precision)
TString & Remove(Ssiz_t pos)
TMacro * GetSelecImp() const
Float_t fProcTime
Processing time (seconds) (millisec precision)
The TTimeStamp encapsulates seconds and ns since EPOCH.
virtual void SetInputList(TList *in, Bool_t adopt=kTRUE)
Set / change the input list.
const char * AsString() const
Return the date & time as a string (ctime() format).
virtual ~TQueryResult()
Destructor.
UInt_t Convert(Bool_t toGMT=kFALSE) const
Convert fDatime from TDatime format to the standard time_t format.
void SetArchived(const char *archfile)
Set (or update) query in archived state.
Mother of all ROOT objects.
virtual const char * GetTitle() const
Returns title of object.
Float_t fMergeTime
Merging time (seconds) (millisec precision)
virtual void Add(TObject *obj)
Long64_t fEntries
number of entries processed
you should not use this method at all Int_t Int_t Double_t Double_t Double_t Int_t Double_t Double_t Double_t Double_t b
Int_t Atoi() const
Return integer value of string.
Long64_t fBytes
number of bytes processed
virtual const char * GetName() const
Returns name of object.
virtual Int_t GetSize() const
Bool_t operator==(const TQueryResult &qr1, const TQueryResult &qr2)
Compare two query result instances for equality.
virtual void SetTitle(const char *title="")
Set the title of the TNamed.
TString fParList
colon-separated list of PAR loaded at fStart
virtual TObjString * AddLine(const char *text)
Add line with text in the list of lines of this macro.
virtual void Warning(const char *method, const char *msgfmt,...) const
Issue warning message.
Bool_t fDraw
true if draw action query
virtual const char * GetTitle() const
Returns title of object.
TString fOptions
processing options + aclic mode (< opt >#< aclic_mode >)
Float_t fInitTime
Initialization time (seconds) (millisec precision)
const char * Data() const