-// @(#)alimdc:$Name$:$Id$
+// @(#) $Id$
// Author: Fons Rademakers 26/11/99
/**************************************************************************
#include <TH1.h>
#include <TFile.h>
-#include "AliRawEvent.h"
-#include "AliRawEventHeader.h"
-#include "AliRawDB.h"
-#include "AliRunDB.h"
-
#include "AliStats.h"
//______________________________________________________________________________
-AliStats::AliStats(const char *filename, Int_t compmode, Bool_t filter)
+AliStats::AliStats(const char *filename, Int_t compmode, Bool_t filter):
+fEvents(0),
+fRun(0),
+fFirstEvent(0),
+fLastEvent(0),
+fBegin(),
+fEnd(),
+fFileName(filename),
+fFileSize(0),
+fCompFactor(0),
+fCompMode(compmode),
+fFilter(filter),
+fRTHist(NULL),
+fChunk(-0.5)
{
// Create statistics object.
- fEvents = 0;
- fFirstRun = 0;
- fFirstEvent = 0;
- fLastRun = 0;
- fLastEvent = 0;
- fChunk = -0.5;
- fFileName = filename;
- fCompMode = compmode;
- fFilter = filter;
- fRTHist = 0;
}
//______________________________________________________________________________
-AliStats::AliStats(const AliStats &rhs): TObject(rhs)
+AliStats::AliStats(const AliStats &rhs):
+TObject(rhs),
+fEvents(rhs.fEvents),
+fRun(rhs.fRun),
+fFirstEvent(rhs.fFirstEvent),
+fLastEvent(rhs.fLastEvent),
+fBegin(rhs.fBegin),
+fEnd(rhs.fEnd),
+fFileName(rhs.fFileName),
+fFileSize(rhs.fFileSize),
+fCompFactor(rhs.fCompFactor),
+fCompMode(rhs.fCompMode),
+fFilter(rhs.fFilter),
+fRTHist(rhs.fRTHist ? (TH1F*) rhs.fRTHist->Clone() : 0),
+fChunk(rhs.fChunk)
{
- // AliStats copy constructor.
+ // AliStats copy constructor.
- operator=(rhs);
}
//______________________________________________________________________________
if (this != &rhs) {
TObject::operator=(rhs);
fEvents = rhs.fEvents;
- fFirstRun = rhs.fFirstRun;
+ fRun = rhs.fRun;
fFirstEvent = rhs.fFirstEvent;
- fLastRun = rhs.fLastRun;
fLastEvent = rhs.fLastEvent;
fBegin = rhs.fBegin;
fEnd = rhs.fEnd;
fRTHist->Fill(fChunk, time);
fChunk += 1.0;
}
-
-//______________________________________________________________________________
-void AliStats::WriteToDB(AliRawDB *rawdb)
-{
- // Write stats to raw DB, local run DB and global MySQL DB.
-
- AliRawEventHeader &header = *rawdb->GetEvent()->GetHeader();
-
- // Write stats into RawDB
- TDirectory *ds = gDirectory;
- rawdb->GetDB()->cd();
- SetEvents(rawdb->GetEvents());
- SetLastId(header.GetRunNumber(), header.GetEventInRun());
- SetFileSize(rawdb->GetBytesWritten());
- SetCompressionFactor(rawdb->GetCompressionFactor());
- SetEndTime();
- Write("stats");
- ds->cd();
-
- // Write stats also in the bookkeeping RunDB
- AliRunDB *rundb = new AliRunDB(kTRUE);
- rundb->Update(this);
- rundb->UpdateRDBMS(this);
- rundb->UpdateAliEn(this);
- delete rundb;
-}