25 ClassImp(TProofProgressStatus);
 
   30 TProofProgressStatus::TProofProgressStatus(Long64_t entries,
 
   34                                            Double_t cpuTime): TObject()
 
   38    fBytesRead = bytesRead;
 
   39    fReadCalls = readCalls;
 
   50 TProofProgressStatus& TProofProgressStatus::operator+=(
const TProofProgressStatus &st)
 
   52    fLastEntries += st.fEntries;
 
   53    fEntries += st.fEntries;
 
   54    fBytesRead += st.fBytesRead;
 
   55    fReadCalls += st.fReadCalls;
 
   56    if (st.fLearnTime > fLearnTime)
 
   57       fLearnTime = st.fLearnTime;
 
   58    fLastProcTime = st.fProcTime;
 
   59    fProcTime += st.fProcTime;
 
   60    fCPUTime += st.fCPUTime;
 
   68 TProofProgressStatus& TProofProgressStatus::operator-=(
const TProofProgressStatus &st)
 
   70    fEntries -= st.fEntries;
 
   71    fBytesRead -= st.fBytesRead;
 
   72    fReadCalls -= st.fReadCalls;
 
   73    if (st.fLearnTime < fLearnTime)
 
   74       fLearnTime = st.fLearnTime;
 
   75    fProcTime -= st.fProcTime;
 
   76    fCPUTime -= st.fCPUTime;
 
   84 TProofProgressStatus TProofProgressStatus::operator-(TProofProgressStatus &st)
 
   86    return TProofProgressStatus(*
this) -= st;
 
   92 void TProofProgressStatus::Print(Option_t*option)
 const 
   94    Printf(
"TProofProgressStatus:%s: Ents:(%lld,%lld), Bytes:%lld, Calls:%lld," 
   95           " Learn:%.3g s, Proc:(%.3g,%.3g) s, CPU:%.3g s",
 
   96           option, fEntries, fLastEntries, fBytesRead, fReadCalls,
 
   97           fLearnTime, fProcTime, fLastProcTime, fCPUTime);
 
  104 void TProofProgressStatus::SetLastUpdate(Double_t updtTime)
 
  107       fLastUpdate = updtTime;
 
  109       TTime tnow = gSystem->Now();
 
  110       fLastUpdate = (Double_t) (Long64_t(tnow)) / (Double_t)1000.;
 
  117 Double_t TProofProgressStatus::GetCurrentRate()
 const 
  119    if (fLastProcTime > 0) {
 
  120       return fLastEntries / fLastProcTime;