13 #ifndef ROOT_TQueryResultManager
14 #define ROOT_TQueryResultManager
31 class TProofQueryResult;
33 class TVirtualProofPlayer;
35 class TQueryResultManager :
public TObject {
45 TList *fPreviousQueries;
46 TProofLockPath *fLock;
50 void AddLogFile(TProofQueryResult *pq);
53 TQueryResultManager(
const char *qdir,
const char *stag,
const char *sdir,
54 TProofLockPath *lck, FILE *logfile = 0);
55 virtual ~TQueryResultManager();
57 const char *QueryDir()
const {
return fQueryDir.Data(); }
58 Int_t SeqNum()
const {
return fSeqNum; }
59 Int_t DrawQueries()
const {
return fDrawQueries; }
60 Int_t KeptQueries()
const {
return fKeptQueries; }
61 TList *Queries()
const {
return fQueries; }
62 TList *PreviousQueries()
const {
return fPreviousQueries; }
64 void IncrementSeqNum() { fSeqNum++; }
65 void IncrementDrawQueries() { fDrawQueries++; }
67 Int_t ApplyMaxQueries(Int_t mxq);
68 Int_t CleanupQueriesDir();
69 Bool_t FinalizeQuery(TProofQueryResult *pq,
70 TProof *proof, TVirtualProofPlayer *player);
71 Float_t GetCpuTime() {
return fCompute.CpuTime(); }
72 Float_t GetRealTime() {
return fCompute.RealTime(); }
73 TProofQueryResult *LocateQuery(TString queryref, Int_t &qry, TString &qdir);
74 void RemoveQuery(TQueryResult *qr, Bool_t soft = kFALSE);
75 void RemoveQuery(
const char *queryref, TList *otherlist = 0);
76 void ResetTime() { fCompute.Start(); }
77 void SaveQuery(TProofQueryResult *qr,
const char *fout = 0);
78 void SaveQuery(TProofQueryResult *qr, Int_t mxq);
80 Int_t LockSession(
const char *sessiontag, TProofLockPath **lck);
81 Int_t CleanupSession(
const char *sessiontag);
82 void ScanPreviousQueries(
const char *dir);
84 ClassDef(TQueryResultManager,0)